3

是否有一个命令/脚本将已经提交的commit IDfilename作为输入,并在不更改的情况下更改提交消息commit ID

我研究了 , 之类的选项,git filter-branch但它们不允许对单个提交进行更改,并且它们都是交互式的。有没有办法以非交互方式做到这一点?git rebasegit notes

4

1 回答 1

7

您不能在不更改提交 ID 的情况下更改提交消息,因为提交消息是经过散列以形成提交 ID 的数据的一部分。

这就是为什么所有更改单个提交的工具通常会更改所有后续提交(filter-branch,rebase等),因为一旦您更改历史中的一个提交,所有后代都必须更改,因为他们有一个具有新 id 的新祖先。

于 2013-08-15T11:39:16.400 回答