我有5个git commit,我已经压缩并合并了它们。但是我发现还有一些其他的东西需要推到同一个分支中(创建另一个分支是一件麻烦的事。所以我又推了两个commit到同一个分支中,并试图在之前压缩的ALL Tests上再次压缩它们。我该怎么做呢?
ALL Tests
lnlaulya1#
只需重新设置它们的基:
# first, rebase git rebase main~2 main --onto origin/main # now squash git reset --soft HEAD~2 git commit -m "Whatever comment is appropriate"
现在,main是origin/main之上的单个修订版或者,基于UI的方式,也可以使用rebase,但交互式
main
origin/main
git rebase -i main~2 main --onto origin/main
你会得到一个2个提交的列表,第一个保留为pick,第二个设置为squash,保存并退出....你会得到一个UI,你需要在其中设置一个 single commit的注解,这个 single commit将是你想要的压缩提交。
pick
squash
1条答案
按热度按时间lnlaulya1#
只需重新设置它们的基:
现在,
main
是origin/main
之上的单个修订版或者,基于UI的方式,也可以使用rebase,但交互式
你会得到一个2个提交的列表,第一个保留为
pick
,第二个设置为squash
,保存并退出....你会得到一个UI,你需要在其中设置一个 single commit的注解,这个 single commit将是你想要的压缩提交。