如何解决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
可从第二个父级(git describe aCommit^2
)到达
然后该提交是“ aTag
”构建的一部分。
问题确实存在:
问题出在gitk中,
r1
,r2
,r3
,r4
没有显示在Precedes: <tag>
中合并的r'
我同意。 Gitk将无法显示该标签。
我将在标签r'
上放置一个标签,名称与aTag
类似,以便更好地了解Gitk中的“ Precedes
”部分。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。