1.一个新功能需求开发产生一个新的feature分支feature-some
git checkout -b feature-some develop
2.feature-some完成开发及测试
git add somefiles
git commit -m "message"
3.需要合并到develop分支-git merge
git checkout develop
git merge feature-some
git resolved conflicts
git add modfiy
git commit -m "message"
git push origin develop
这时使用git log会看到明显的git merge信息,并不是自己写的message
如果让分支历史看起来像没有经过任何合并一样,你也许可以用 git rebase
4.需要合并到develop分支-git rebase
git checkout develop
git rebase feature-some
5.解决冲突
在rebase的过程中,也许会出现冲突(conflict). 在这种情况,Git会停止rebase并会让你去解决 冲突;在解决完冲突后,用"git-add"命令去更新这些内容的索引(index), 然后,你无需执行 git-commit,只要执行:
$git rebase--continue
这样git会继续应用(apply)余下的补丁。
在任何时候,你可以用--abort参数来终止rebase的行动,并且"mywork" 分支会回到rebase开始前的状态。
$git rebase--abort
参考:
网友评论