【发布时间】:2015-11-04 01:29:27
【问题描述】:
我有一个有几个提交的功能分支(见下文)。自分支以来,master 中也添加了一些提交。
所以我将master 合并到feature 分支中。
git checkout feature
git merge master
这导致feature 分支上的以下日志历史记录:
* E (HEAD) merging master into feature
|\
| * D feature commit 2
| |
| * C feature commit 1
* | B master commit 2
|/
* A master commit 1
实际上,功能路径上的提交数量很大(100+),我想将它们全部压缩。
有没有办法只压缩功能分支上的提交,同时保留 master 行上的提交?
【问题讨论】:
-
你还是希望结果在 feature 分支上有一个提交并与 master 合并,还是希望你的所有工作都应用到 master 上而不分支?
-
我认为是第一个(如果我理解正确的话)。基本上在上图中,C 和 D 应该被压缩为一个提交,并且应该保留从
master(A, B) 中提取的提交。这样我就可以从这个分支将 C->D->E 直接合并到master中。再次感谢! -
另一个问题 - 您在功能分支上的历史记录是完全线性的,还是有传入或传出合并?
标签: git branching-and-merging git-rewrite-history