三分钟学习Git(六) 之 多次提交变一次

下面在教两个平时用到的Git技巧。

情景:

你建了自己的分支,如zhc

git branch -b zhc

然后你做了很多次的commit。

你想把这些很多个commit作为一个commit到mainline branch上,该怎么做呢?

方法:

首先更新mainline到最新

git checkout mainline

git pull --rebase

然后将zhc分支的多个commit变成一次commit

git merge --squash zhc

再次更新确认是最新的

git pull --rebase

git diff origin mainline

最后push

git push origin mainline


情景二:

另外,如果你在mainline上commit了,然后你发现别人也在mainline上做了改动并且push到了远程仓库上,你该怎么办呢?

方法:

很多人也许会先将此次提交保存起来(cherry-pick到另一个分支,或者是reset后stash起来),然后在pull最新的,最后在提交到最顶端。其实没有必要,git已经想到了此情景,并且实现了这种操作。命令就是:

git pull --rebase

把所有的remote变化都拉下来,并且将你最新的commit置于最顶上,这非常的方便。

原文:http://blog.csdn.net/hongchangfirst/article/details/44671231

作者:hongchangfirst

hongchangfirst的主页:http://blog.csdn.net/hongchangfirst


三分钟教你学Git (五)之 查询历史

三分钟教你学Git (四)之紧急救助

你可能感兴趣的:(三分钟学习Git(六) 之 多次提交变一次)