[英]Git squash specific commits
我使用 rebase 工具来压缩最后 3 次提交,我错误地使用 git rebase -i HEAD~4 这个命令打开了 VI 交互工具,如下所示
d 041a84a Fix docs buil(#4)
p 8896b6d handle users
s 8759e73 add new users
s b485efd add phones
该041a84a是没有关系的,我将其标记为d
,但不知道是否会从这个分支删除它,只有或当我提交给它STILL R EMOVE它,我不想让师傅师傅,我只是想删除它从我的分支...如果我可以退出 VI 工具并将其更改为git rebase -i HEAD~3
??
如果我正确理解你的问题,你的状态是这样的:
master : --A--B
branch : \--C--C'--C"
在哪里:
B是 041a84a ;
C是 8896b6d ;
C'和C"必须被压扁。
现在,如果你申请
d B Fix docs buil(#4)
p C handle users
s C' add new users
s C" add phones
这应该导致分支看起来像:
master : --A--B
branch : \--C*
这意味着 master不会被更改,只会更改您当前正在 rebase 的分支的历史记录。
最后,回答“如果我可以退出 VI 工具并将其更改为 git rebase -i HEAD~3” 。
不用写q就可以退出VI ! 然后你可以自由地做git rebase -i HEAD~3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.