如何在github存储库中将多个提交合并为一个

如何在github存储库中将多个提交合并为一个,git,github,Git,Github,我有一个github存储库,它显示了太多的提交,我想将它们压缩成一个。 有没有办法使这些提交看起来与我当前的本地回购完全一样?您可以通过使用交互式重基来挤压本地回购上的提交。之后,你可以使用强制推 git推送-f 但是,如果有其他人也在处理您的github回购协议,请小心,因为您可能会丢失提交。我通常只强制推动回购/分行,而我是唯一一个承诺的人。默认情况下,git也会推送所有分支。因此,最好指定要推动的分支,即 git-push-f原始主机 我已经将git设置为只推送当前分支,以避免错误地破坏远

我有一个github存储库,它显示了太多的提交,我想将它们压缩成一个。
有没有办法使这些提交看起来与我当前的本地回购完全一样?

您可以通过使用交互式重基来挤压本地回购上的提交。之后,你可以使用强制推

git推送-f

但是,如果有其他人也在处理您的github回购协议,请小心,因为您可能会丢失提交。我通常只强制推动回购/分行,而我是唯一一个承诺的人。默认情况下,git也会推送所有分支。因此,最好指定要推动的分支,即

git-push-f原始主机

我已经将git设置为只推送当前分支,以避免错误地破坏远程回购


git config--global push.default current

什么叫“显示太多提交”?有很多承诺并不坏,有太大和太小的承诺都不坏。我认为你是对的。我应该这样保存它们。负面投票人能告诉我为什么它被否决吗?我有一些提交是错误的实现,我想删除它们。如果它在GitHub上(而不是在推之前只在您的私有存储库中),那么就太晚了。您可以使用诸如交互式重基或筛选器分支之类的工具来清理历史记录(删除带有bug的提交、压缩修复、可能的重新排序和拆分提交),但您应该在发布历史记录之前完成这项工作。更改已发布的历史记录会给从您的存储库工作的所有开发人员带来不便。