这是我从页面http://nvie.com/posts/a-successful-git-branching-model/ 中的理解,大约 2 年前我在那里第一次学习了 git-flow 模型,即tag
将始终在release
分支与master
合并的提交上。
我最近为 Git 扩展安装了 git-flow 插件,并且tag
被应用于release
分支上的最后一次提交,而不是master
上的合并提交分支。
这是一个错误吗? tag
放在哪一个真的很重要吗? 我的解决方法是手动删除tag
并在我学会创建它的地方重新创建它。
我刚刚遇到了同样的问题,与您对@RoLYroLLs 的理解相同。 这是文章中的引述:
当发布分支的状态准备好成为真正的发布时,需要执行一些操作。 首先,发布分支被合并到
master
(因为master
上的每次提交都是一个新版本,请记住)。 接下来,必须标记master
上的提交,以便将来轻松引用此历史版本。
希望这能得到解决,因为我必须做同样的删除和重新创建舞蹈,你提到过。
好吧,我对此做了一些尝试,我发现了如何将它“修复”到http://nvie.com/posts/a-successful-git-branching-model/ 上编写的方法论
我觉得这个项目自从上次接触它是在 2012 年之后就已经被放弃了,所以我不会创建 PR,但我会让这个问题保持活跃。
但是,对于像我这样的人,您可以编辑以下文件:
https://github.com/nvie/gitflow/blob/15aab26490facf285acef56cb5d61025eacb3a69/git-flow-release#L253
和
https://github.com/nvie/gitflow/blob/15aab26490facf285acef56cb5d61025eacb3a69/git-flow-hotfix#L297
将$BRANCH
更改$MASTER_BRANCH
根据我的理解,在合并之前将标签放在 release 分支上(而不是放在 master 分支上)实际上是正确的做法,因此它也可以通过开发分支的git describe --tags
找到。 见#374
根据我的理解,在合并之前将标签放在 release 分支上(而不是放在 master 分支上)实际上是正确的做法,因此它也可以通过开发分支的
git describe --tags
找到。 见#374
这是一个奇怪的论点。
源是版本化的,因此您可以将部署的应用程序与创建它的源相关联,您正在从主部署 -> 主应被标记。
最有用的评论
根据我的理解,在合并之前将标签放在 release 分支上(而不是放在 master 分支上)实际上是正确的做法,因此它也可以通过开发分支的
git describe --tags
找到。 见#374