在Git里面,分支这个概念是你一开始能学到的最有用的东西了。分支允许你隔离开发你的项目,而要想成为一个高效的Git用户,这是非常关键的一点。
一开始这听起来好像不是什么大事,但一旦你完全的理解了分支概念,你会开始想没有这个你怎么活下去。
尽管其他的版本控制系统也会使用分支概念,Git是第一个实现它,并让它变的好用的系统。
远程创建一个主分支,本地每人创建功能分支,日常工作流程如下:
首先去自己的工作分支
$ git checkout work
工作
....
....
提交工作分支的修改
$ git commit -a
回到主分支
$ git checkout master
获取远程最新的修改,此时不会产生冲突
$ git pull
回到工作分支
$ git checkout work
用rebase合并主干的修改,如果有冲突在此时解决
$ git rebase master
回到主分支
$ git checkout master
合并工作分支的修改,此时不会产生冲突。
$ git merge work
最后提交到远程主干
$ git push
这样做的好处是,远程主干上的历史永远是线性的。每个人在本地分支解决冲突,不会在主干上产生冲突。
另外分享一些git的小技巧的博客:
http://www.trinea.cn/dev-tools/git-skill/
http://justcoding.iteye.com/blog/1830388