Osa*_*bie 5 php git github github-for-windows
我已经决定现在是时候开始在一个PHP项目中使用Git了,这个项目我已经随便开发了十多年.(请不要,版本控制警察没有讲座!)由于我的VPS需要进行复杂的设置来完成项目所需的一切(特别是单代码库 - 多客户端结构和支持日语的TeX安装以创建专业PDF ),无法在我的本地Windows框中设置开发环境.但我确实在服务器上有一个可以玩的测试区域,所以这是我的开发区域.目前我使用Filezilla访问服务器并直接将文件打开到Notepad ++中,当我准备好看到我的编辑功能时,我只需保存并让Filezilla上传.当测试平台上的一切看起来都很好时,我会将文件复制到生产代码库区域.是的,除了我自己的评论之外,这给了我没有我的变化的历史,我必须小心不要将错误修复与半完成的新功能混合在一起.我可以看到Git的分支对于正在进行的不同升级的价值.
昨天我的脚趾湿了.首先我创建了一个Github帐户,然后(在教程的推荐下)安装了Git For Windows(带有自己的Bash和外观很小的GUI)和Kdiff3,并按照一些配置Git Bash的说明进行操作.尽管如此,我最终还是需要安装其他东西以便与我的Github帐户(适当地命名为Github for Windows)进行交互,这似乎完成了其他两个程序应该为我做的所有事情.无论如何,然后我做了一个简单的任务,因为我第一次进入Github世界 - 我已经为其他人的jQuery插件添加了功能,并希望与开发人员共享它,所以我将他的repo 分叉,克隆到我的机器上,覆盖了文件我之前编辑和测试过,同步到我的Github帐户,并发送了拉取请求.最后一句话中的所有术语对我来说都是全新的,所以我为自己感到非常自豪,因为我走得那么远.;)但我想我只需要Github软件,而不是Git软件 - 很难知道要相信哪些教程.
无论如何,现在我想弄清楚我自己的东西的工作流程,这是我们的实际问题.从我所知道的,除了公共Github在任何地方都有主要的回购需要花钱,我不在乎别人是否看到我的代码(我不指望其他人可以处理由意大利面条代码制作的古怪项目,但是如果他们想,那很好).好的,但那又怎样?也许是其中一种情况或其他情况:
将repo的分支克隆到我的PC,对本地文件进行编辑,然后将它们上传到Filezilla进行测试(比我当前的工作流程点击几次,因为Filezilla不会自动查看本地文件和远程文件之间的关系,但没什么大不了的.然后,当我对代码感到满意时,在本地提交,同步到Github,并将文件(从某处 - 在这一点上不确定)复制到生产区域.
在我的VPS上安装Git的Linux风格,以便"本地"Git文件位置是测试平台,并使用Git通过PuTTY进行本地提交.文件结构更简单(根本不需要在我的电脑上复制)但使用Git更麻烦:
此外,由于我从未使用过我在这里安装的Git程序,我不确定它是Git还是Github我将在服务器上使用.
其他一些情况,因为#1或#2都没有使用Git/Github来管理生产文件区域,这可能是一个好主意,所以我不会忘记复制我需要的一切.
我试图研究基于PHP的GUI与#2想法的可能性(所以我不必使用PuTTY进行日常操作),但似乎这些工具的讨论都假设您正在尝试创建自己的Github服务,或者"本地"克隆存储库在物理上位于您的本地PC上(xAMP在任何操作系统上运行).但也许我使用的Github软件足以完成所有这些 - 很难说.我还不了解Github上的主公共仓库,某处的分支机构(Github上也有?),我的Web服务器上至少有两组文件(测试平台和生产区域),Github软件,Git软件,和我正坐在的电脑的键盘/屏幕.
所以原谅我的新手乱序,但如果那里有人有类似的发展情况,你的工作流程是什么?或者你会建议我什么?
这是解决该问题的一种方法:
您将需要三个存储库:
这是实现:
workstation$ cd localWorkingDirectory/
workstation$ git init
workstation$ git add .
workstation$ git commit -m 'initial commit'
workstation$ ssh login@myserver
myserver$ mkdir myrepo.git
myserver$ cd myrepo.git
myserver$ git init --bare
myserver$ exit
workstation$ cd localWorkingDirectory/
workstation$ git remote add origin login@myserver:myrepo.git
workstation$ git push origin master
Run Code Online (Sandbox Code Playgroud)
每次在任何分支上进行提交时,请使用以下命令进行备份:
workstation$ git push origin BRANCH
Run Code Online (Sandbox Code Playgroud)
当您准备好将分支转移version2
到生产中时:执行此操作
workstation$ git push origin version2
workstation$ ssh login@myserver
myserver$ git clone path/to/myrepo.git productionDirectory
myserver$ cd productionDirectory
myserver$ git checkout version2
Run Code Online (Sandbox Code Playgroud)
不好了!这不行!最好切换回版本1!
workstation$ ssh login@myserver
myserver$ cd productionDirectory
myserver$ git checkout version1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1668 次 |
最近记录: |