如何通过直接编辑补丁和元数据来更改历史记录?

时间:2010-09-30 15:35:30

标签: git rebase

Git有一堆改变历史的程序 (rebasefilter-branchcommit --ammendguiltstacked git等)

但是,如果有一个过程将最后几次提交转换为包含一系列具有提交元数据的补丁的文件,有时可以自由编辑,然后转回到重新定位的历史记录(假设补丁仍然适用)。

有没有人有办法做到这一点?

3 个答案:

答案 0 :(得分:1)

git rebase -i期间,将要更改的提交设置为edit。然后,您可以修改它们并使用您想要的其他消息重新提交。

答案 1 :(得分:0)

您可以尝试git format-patchgit am,但这会在每次提交时生成一个文件 您也可以使用git diff,但这会将多个提交合并到一个补丁中。

答案 2 :(得分:0)

我最终使用了magit,这对我来说很好地解决了这个问题。