假设我这样做
git rebase -i HEAD~3
并在文本编辑器中打开以下内容:
pick ae27841 Commit 1
pick fd8a71e Commit 2
pick badd490 Commit 3
我想将这 3 个提交转换为 1 个提交,以便我可以将该提交推送到我的存储库,然后调用拉取请求。我知道有两种方法可以解决这个问题:
我可以留下一个提交
pick
并压缩另外两个。IEpick ae27841 Commit 1 s fd8a71e Commit 2 s badd490 Commit 3
我可以删除这 3 个提交中的 2 个。IE
pick ae27841 Commit 1
这两个命令有什么区别?据我了解,每次提交都是项目的不同版本。因此,我的最新提交将是我的最新版本,对吗?所以我最新的提交就是我需要保留的所有内容。由于其他 2 个提交是项目的“旧”版本,因此我不需要它们,因此我可以删除它们。那么方法2
是将我的 3 个提交转换为一个的正确方法吗?如果是这样,我需要什么样的情况来压缩我的提交?
这里的正确方法是什么?压缩或删除提交?