如何将两个git提交合并为一个?

时间:2013-10-04 10:20:54

标签: git git-commit git-log

我做了两次提交,而实际上一次提交就足够了,我做两次提交的原因是因为我在第一次提交后忘记添加一个文件,所以我添加它并再次提交,之后我发现我发现我已经使用相同的注释进行了两次提交,那么如何将这两个提交合并为一个呢?

* 3e381e7 - (HEAD, master) now i have add load script which can open many pages automatically at one time (4 seconds ago) 
* 2d97025 - now i have add load script which can open many pages automatically at one time (21 seconds ago) 

如何合并提交3e381e7和2d97025以便只有一个提交日志?

2 个答案:

答案 0 :(得分:3)

互动rebase是您的朋友:

git rebase -i

您还可以执行git reset --soft后跟git commit --amend,但是最简单的方法是变基。

答案 1 :(得分:2)

将两个提交合并为一个称为“压缩”。做一个互动的rebase,

git rebase -i HEAD~3

然后在打开的文本编辑器中,将2d97025的行更改为以“squash”开头,然后保护文件并退出编辑器。