如何修改上次提交而不丢失提交标签

问题描述 投票:0回答:1

我有一个带有标签的提交,但是当我修改它的任何更改时,它会丢失标签。 我对 git 并不陌生,但还是不明白它是如何工作的

我已经尝试过:

git commit --amend --no-edit
git commit --amend --no-post-rewrite
git commit --reuse-message=HEAD -C HEAD
git git-commit git-amend
1个回答
0
投票

提交不能被重写。您只能进行新的提交并替换旧的。请参阅 我对什么是 Git 提交 ID? 的回答以了解原因。

如果你有这个...

A - B - C [HEAD][tag]

提交修改后,你就得到了这个。

A - B - C [tag]
     \
      C1 [HEAD]

具有自己的提交 ID 的全新提交。 Git 不会为你移动标签。

您可以编写一个小脚本来检查当前提交是否有标签,并将标签移动到新的提交。然后,您可以将其命名为

git-commit-amend
(只要它是
git-something
),将其放入您的 PATH 中,它将作为
git commit-amend
使用。

© www.soinside.com 2019 - 2024. All rights reserved.