如何解决Git更新标签而不创建新分支?
我有一个标记 v1
设置为旧提交。这个版本有一个错误,我想更新它。
我跑了get checkout v1
。我已经更新了代码来修复这个错误,然后是 git- added 和 git-commited。
现在我想更新标签 v1
以引用这个新提交。
我试过git push -f origin v1
。这不起作用。我收到以下回复:
Everything up-to-date
有没有办法做到这一点?最好,我想避免创建一个新分支,但如果必须这样做,我怎样才能避免污染分支命名空间?之后我可以删除分支吗?
解决方法
标签通常用于查看特定版本的文件,文件一旦被标记就不会被更改,例如版本 1.0 如果您想进行更改并在之后重新标记,
- 从您要更新的标签创建一个新分支,例如分支 a。
- 在新分支 a 上创建您的提交。
- 当您准备好用分支 a 替换标记时,删除您从中创建分支 a 的标记。
- 从分支 a 创建新标签
- 如果之后要删除分支 a,则删除分支 a。
我终于想出了一个不需要创建新分支的解决方案。
-
git checkout tag_name
-
进行本地更改
-
git add .
和git commit -m "commit message"
-
git tag -fa tag_name
-
git push -f origin master --tags
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。