将git提交合并为一个

时间:2011-09-07 21:08:11

标签: git

  

可能重复:
  Are there any Git command to combine all our ugly commits together to one?

我已经下载了公共git repo并修复了一些东西。我做了几次提交,主要是随机消息,如“dsadsadsadasd”。现在我想推回那些变化,但不是作为10个凌乱的提交,而是作为一个有良好信息的。如何在推送之前将这些提交合并为一个?

4 个答案:

答案 0 :(得分:2)

git reset --soft origin/branchname
git add -A
git commit -C HEAD@{1}

这是最快的方法。如果您想要新邮件而不是最后一封邮件,请将-C HEAD@{1}替换为-m "some other message"

希望这有帮助。

答案 1 :(得分:1)

git rebase -isquash与您的提交一起使用

http://kernel.org/pub/software/scm/git/docs/git-rebase.html

答案 2 :(得分:0)

Git Rebase ...确保在你推动后不要改变。此外,如果您从github撤出,则必须分叉存储库并添加远程数据库。成功推送到fork后,您必须通过Web浏览器在原始存储库中添加pull请求。

http://kernel.org/pub/software/scm/git/docs/git-rebase.html

答案 3 :(得分:0)

使用git rebase -i HEAD~3启动交互式rebase。这使您可以压缩任何选定的提交并重新排序(如果需要)。