git merge --squash & git format-patch 将多个commit生成一个patch

Posted Hsin wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git merge --squash & git format-patch 将多个commit生成一个patch相关的知识,希望对你有一定的参考价值。

1. git merge --squash
实例:dev分支merge master分支(git merge master)
git merge master 后的git log
commit 5 merge
commit 4 master
commit 3 master
commit 2 dev
commit 1 dev

git merge master --squash 后的git log
commit 3 squash (包括commit3、4,并且不显示commit5)
commit 2 dev
commit 1 de

 

2. git format-patch 将多个commit生成一个patch
git format-patch 貌似只可以将一次提交作为一个patch

git format-patch -2 03865244 #某次提交之前的几次
http://www.jianshu.com/p/300eea8b66cc

通过reset 和merge来将多个commit 合并为一个patch
http://blog.csdn.net/xsckernel/article/details/17718127

以上是关于git merge --squash & git format-patch 将多个commit生成一个patch的主要内容,如果未能解决你的问题,请参考以下文章

git `merge --squash` 不添加“合并”标题来提交

git merge --squash 选项合并commit操作实例

git merge时merge/squash merge/rebase merge的区别

“git merge --squash”的正确用例是啥?

聊下git merge --squash

聊下git merge --squash