Git:提交标签,然后将提交合并到master

Viv*_*ath 4 git git-merge git-tag git-branch

我主要熟悉SVN.我一直在使用Git,但还没有做过非常先进的事情.对于我的项目,我一直在创建标记单个版本的标签.例如,我有一个标签,v1.2.3用于我项目的特定版本.我想为该标记提交一个错误修复,然后将其合并到master中.我该怎么做呢?我查找了有关从标记创建分支的信息,但我不确定这是否是正确的方法.我可以直接提交标签然后将其合并到主设备中吗?

sst*_*stn 7

在我看来,承诺标签是完全错误的,尽管svn,设计允许它.

比如说,你有一个版本v1.2.3并且你提交了那个标签 - 你得到了什么?仍然是v1.2.3或1.2.3a或类似的东西?你如何恢复后来的1.2.3版本?

不过,在git中你可以重新创建标签.但是我不确定你是否应该为"我不小心标记错误的版本"之类的任何其他情况做这件事,或者如果你有"最后稳定版本"这样的"移动"标签.

在git中你可以这样做:

git branch v1.2.3-bugfix v1.2.3   [v1.2.3-bugfix is your branch, v1.2.3 the tag]
git checkout v1.2.3-bugfix
-- do your changes --
git add ...
git commit
git tag -f v1.2.3
Run Code Online (Sandbox Code Playgroud)

也就是说,首先从标记开始创建分支.然后你检查那个分支(通过git checkout -b有快捷方式).您提交更改并重新创建标记.

之后,您可以删除您的bugfix-branch.