前言
天下可能有一种后悔药(版本控制)。
多人开发必定少不了开分支,分支工作一般也采用某些策略:
1. 切换到自己的工作分支进行开发
$ git checkout myDevelop
开发期
2. 开发完毕后提交自己的工作分支
$ git commit -a
3. 回到主分支
$ git checkout master
4. 将远程最新的版本拉取过来
$ git pull
5. 回到自己工作的分支
$ git checkout myDevelop
6. 用rebase合并主干的修改
$ git rebase master
7. 回到主分支
$ git checkout master
8. 合并自己工作分支的修改
$ git merge myDevelop
9. 提交到远程master
$ git push
这样一来远程主干上的历史永远是线性的。每个人在本地分支解决冲突,不会在主干上产生冲突。
关于rebase
官网上这么介绍
ok,已经讲得非常直白了,假设我们现在在topic分支上,现在的版本状态是这样