Git合并没有历史提交

当我将其他分支合并到主人时,我希望没有其他分支历史提交。 我该怎么做 ?

据我们所知:

git pull --rebase origin test#意思是:只有历史提交没有合并提交。

git pull --no-ff origin测试#意思是:历史提交和合并提交。

git pull -ff-only起源测试#意思是:只有历史提交没有合并提交。

我想“ 只合并提交 ”,怎么样? 请。 喜欢这个:

https://github.com/torvalds/linux/commits/master 在这里输入图像描述

进一步问题:

如果我使用“ --squash ”,合并时它不会自动记录“合并分支xxx'xxxx ”或“合并xxxx xxx'”。 需要把它写在我的手上?


请注意,您也可以配置合并的分支来自动压缩要合并的提交(如本讨论中所述):

git config branch.<name>.mergeoptions --squash 

git config有:

branch.<name>.mergeoptions

设置合并到分支<name>默认选项。
语法和支持的选项与git-merge相同,但包含空白字符的选项值目前不受支持。

这样,你不必为git merge添加任何额外的选项。

正如“在git中, merge --squashrebase之间有什么区别?”那样,它不会记录合并:

这将记录合并:

git config branch.<name>.mergeoptions --no-ff

我得到答案:

   --squash, --no-squash
       Produce the working tree and index state as if a real merge happened
       (except for the merge information), but do not actually make a commit or
       move the HEAD, nor record $GIT_DIR/MERGE_HEAD to cause the next git commit
       command to create a merge commit. This allows you to create a single commit
       on top of the current branch whose effect is the same as merging another
       branch (or more in case of an octopus).

git pull --squash起源测试

没关系!

链接地址: http://www.djcxy.com/p/16023.html

上一篇: Git merge no history commit

下一篇: "Funny RefName" when publishing to BitBucket