我看过很多关于使用git commit --amend或rebasing来压缩提交的博客文章。
我发现git重置到最后一个检查点(比如在我所有的“保存点”微提交之前),然后使用交互式添加来选择提交的最佳顺序会更容易一些。
这有什么不好的吗?
我想知道b/c,因为我读过的大多数博客都是为了这个目的而使用、修改或改写的。
发布于 2011-04-01 16:27:38
缺点是您需要重新挑选所有单独的文件,以便在提交时再次对它们进行分组。
如果您的提交需要分组在一起(而不必在这些提交中添加或删除文件),那么rebase --interactive更容易:您可以根据提交的文件集进行推理。
实际上,通过正确的提交注释,rebase --interactive --autosquash可以为您进行重新排序。
如果您的提交纯粹是中间保存点,而没有过多考虑它们在文件集方面的组成,那么您的解决方案就足够了。
发布于 2011-04-01 21:31:59
除了VonC回答的内容之外,这还取决于你有多少提交。
最常发生在我身上的事情是这样的:
的更正
使用交互式的rebase,重新排序然后将更正压缩到A的原始提交中是很容易的。
另一个例子是当我只想重写提交消息时。
再举一个例子,当我有这样的东西时
A-------------------master
\
B-----C-----D-----branch我想把C&D而不是B合并到master中。我可以使用rebase将我的分支提交重新排序到C、D、B,然后是git checkout master和git merge D
https://stackoverflow.com/questions/5510709
复制相似问题