如何向过去提交的文件添加编辑?

How can I add edits to a file committed in the past?

我提交了一个编辑列表,然后我开发了一个新功能并再次提交。现在我发现另一个编辑需要进入第一次提交,我如何使用 git 来做到这一点?因为我提交了两次,所以我不能使用 --amend

您仍然可以使用 git rebase -i,选择编辑给定的提交。请注意,不鼓励对已推送的提交执行此操作,因为它可能会删除您同事的工作,因此只有在他们同意(并同步他们的存储库)的情况下才这样做。

您还可以创建一个 fixup 提交,稍后可能会被压缩:

git commit --fixup=hash_of_the_commit_to_change
# later:
git rebase -i --autosquash ...

与上面相同的警告适用于后面的命令,但可以放心地创建提交。