Git 更改以前的提交消息,同时保持其已注销状态

Git 更改以前的提交消息,同时保持其已注销状态,git,git-rebase,git-sign,Git,Git Rebase,Git Sign,我有一大堆签名和推送提交。我想更改他们的消息。然而,当我使用诸如:git rebase-I HEAD~12这样的命令并重写它们的签名时,我会使用git log-show签名检查它。如何更改提交消息,同时使其保持注销状态 您可以使用以下命令再次注销它们: git commit --amend --signoff 对于多个提交: git filter-branch -f --commit-filter 'git commit-tree -S "$@"' HEAD git push -f 无法在更

我有一大堆签名和推送提交。我想更改他们的消息。然而,当我使用诸如:git rebase-I HEAD~12这样的命令并重写它们的签名时,我会使用git log-show签名检查它。如何更改提交消息,同时使其保持注销状态

您可以使用以下命令再次注销它们:

git commit --amend --signoff
对于多个提交:

git filter-branch -f --commit-filter 'git commit-tree -S "$@"' HEAD
git push -f

无法在更改(例如,其消息)时保留旧签名

更改消息并再次注销创建新提交并替换旧提交的一种方法是:


git rebase-i-S HEAD~12

对多个提交使用筛选器分支。更新了答案这是因为您实际上无法更改提交。您只能使用新的提交,而不是旧的提交。因此,您必须签署新的提交。