挤压git中分支中的所有提交
假设我在功能分支中有许多提交,这些提交来自master中的最后一次提交挤压git中分支中的所有提交,git,squash,Git,Squash,假设我在功能分支中有许多提交,这些提交来自master中的最后一次提交 ... - last_commit_in_master - C1 - C2 - .. - C100 现在我想把所有这些提交合并成一个 我知道一个解决方案: git-rebase-i-master 替换除第一个外的所有拾取。Yoohoo,vim中有2,s/pick/squash/ 与其进行挤压,不如用fixup替换除第一个之外的每个提交,然后不必选择新的提交名称,只需将它们都放在同一个提交中即可。如果要将所有提交合并为一个
... - last_commit_in_master - C1 - C2 - .. - C100
现在我想把所有这些提交合并成一个
我知道一个解决方案:
git-rebase-i-master
- 替换除第一个外的所有拾取。Yoohoo,vim中有
与其进行挤压,不如用fixup替换除第一个之外的每个提交,然后不必选择新的提交名称,只需将它们都放在同一个提交中即可。如果要将所有提交合并为一个提交,并且需要上一次提交的提交消息和时间2,s/pick/squash/
(如果您想调整消息,这将允许您重新编辑消息。)git reset --soft $(git merge-base HEAD master) git commit -c ORIG_HEAD
这不会重新设定基准。在一个单独的步骤中完成这项工作。好吧,检查旧的提交并选择一个新名称并不是那么糟糕。