这次我们将探讨如何在git里合作。
1
目前我已经拥有的项目放在/home/rocrocket/git-study/rocrocket里面。此时我的一个同学小强(xiaoqiang),他在这台用于开发的机器上也拥有一个登录帐号,他也希望贡献代码。怎么办呢?
小强可以这样获取我的工作成果:
xiaoqiang$ git clone /home/rocrocket/git-study/rocrocket myrepo
这样小强就克隆了我的工作成果到了他的家目录中的myrepo中。OK,小强可以对myrepo里的程序进行改进了。
在修改完毕之后,小强使用git commit -a来提交他的改进成果。此后,小强告诉我他已经完成了改进工作,让我去查看一下。
2
我为了肯定小强的劳动成果(也就是将他的改进合并到项目中来),我是这么干的:
cd /home/rocrocket/git-study/rocrocket
git pull /home/xiaoqiang/myrepo master
这句话的意思是:将小强的工作的master合并到我的当前的分支上(通常是主干道)。当然,如果这期间,我也修改了项目,那么git pull的时候如果报告冲突,我也是需要自己来搞定的。
其实pull命令完成了两个动作,首先从远端分支获取diff信息,第二个动作就是将改变合并到本地分支中。
ps:由于考虑到后续的学习内容需要对前述内容有非常好的理解和掌握,因此《看日记学git》系列之九将会复习并总结前八章的内容,大家温故知新以便继续后面git难点内容的学习。
转载请注明:Git中国 » 【看日记学Git】之八