微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

git force merge-已经更新

如何解决git force merge-已经更新

当更改已合并到分支中时,是否可以将标签合并到分支中?我正在尝试填充Precedes中的gitk

编辑:当我执行git merge <TAG>时,由于分支没有任何区别,它无法合并。

Edit2: 我们正在使用gitflow流程,其中拥有master,develop和PTR分支。 我们的过程是从开发中创建一个发布分支。测试完成后,发布分支将被压缩并合并到母版中。压缩的提交在master上标记。然后将标签合并回发行分支,然后合并以进行开发。我们遇到的问题是发布时的提交不位于标记之前。这使得很难验证提交是否是构建的一部分

解决方法

这些更改何时已合并到分支中?

这意味着:

-x--x--x--x--x (master)
         /
 -y--y--y--y--y (abranch)
        |
     (tagT)

由于标签引用了已合并到master的提交,因此蚂蚁git merge <atag>将成为空操作。
而且该标记将不会成为master分支的一部分,而是继续分支的一部分。

这意味着git branch --contain <aTag>将不包含master
另请参见“ Verify if a tag was done in the master branch”。


在OP提供的新gitflow上下文中:

我们的过程是从release创建一个develop分支。
测试完成后,release分支将被压缩并合并到master
压缩的提交被标记在master

                 (aTag)
                   |
   -m--m--m--m--m--R (master,with release squashed-commit)
         
     r--r--r--r (release)
    /
-d--d--d (develop)

然后将标记合并回到release分支,然后合并到develop

                 (aTag)
                   |
   -m--m--m--m--m--R   (master,with release squashed-commit)
                    \------------\
     r--r--r--r-----r' (release)  \
    /                              \
-d--d--d---------------------------d' (develop)

我们遇到的问题是在release上的提交不位于标记之前。这使得很难验证提交是否是构建的一部分

从架构中:

然后该提交是“ aTag”构建的一部分。

问题确实存在:

问题出在gitk中,r1r2r3r4没有显示在Precedes: <tag>中合并的r'

我同意。 Gitk将无法显示该标签。
我将在标签r'上放置一个标签,名称与aTag类似,以便更好地了解Gitk中的“ Precedes”部分。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。