有没有办法在不接触分支的情况下强制Git合并冲突?
情况: 我有一个分支有没有办法在不接触分支的情况下强制Git合并冲突?,git,github,git-merge,merge-conflict-resolution,Git,Github,Git Merge,Merge Conflict Resolution,情况: 我有一个分支主机和一个分支功能。我想在功能中进行更改并将它们发布给master,其中一些更改被标记为合并冲突 举例来说,假设分支master中有一个文件test.txt,如下所示 foo 功能如下所示 bar zed 我想从feature master创建一个PR,其中一些更改(例如从foo到bar的更改)被标记为合并冲突,必须手动解决。同时,一些变更,如添加zed,没有标记为冲突。基本上,我需要手动干预,在PR关闭之前标记并解决此类冲突,但我不希望审查所有更改 有没有办法做到这一点
主机
和一个分支功能
。我想在功能中进行更改
并将它们发布给master,其中一些更改被标记为合并冲突
举例来说,假设分支master
中有一个文件test.txt,如下所示
foo
功能
如下所示
bar
zed
我想从feature master创建一个PR,其中一些更改(例如从foo到bar的更改)被标记为合并冲突,必须手动解决。同时,一些变更,如添加zed,没有标记为冲突。基本上,我需要手动干预,在PR关闭之前标记并解决此类冲突,但我不希望审查所有更改
有没有办法做到这一点?可能是通过手动将git冲突标记写入功能
有没有办法做到这一点
只有通过制造实际的冲突
可能有冲突的合并1有三个输入:
git merge
,或为git cherry pick
或git revert
人工选择的提交李>
头
或--我们的
,有时是本地的)李>
——他们的
)- 某些文件中存在差异,如从合并基到文件当前副本的
的输出所示,以及git diff--find renames
- 同一个文件中存在差异,如从合并基到另一个提交的
的输出所示,以及git diff--find renames
- 这些变化接触相同的线,或以其他方式邻接(一条线的终点是另一条线的起点)
-Xours
或-Xtheirs
从两个冲突的更改中自动选择一个
(高级冲突也有相同的三个输入,但会在差异的一方修改文件,另一方删除文件时发生。没有一组行存在冲突,但仍然存在冲突:Git应该保留修改过的文件,还是完全删除文件?)
1任何真正的合并,我指的是合并的过程,或作为动词的合并,都可能有冲突。这里的措辞是为了掩盖这样一个事实,
git merge
在执行快进操作时有时不执行合并。Hmm好的。因此,合并冲突永远不会发生在#1和#3相同的地方。我想知道是否有一种方法可以进行基本合并,将本质上是不可操作的提交(例如添加空格)推送到master以分离#1和#3以强制合并冲突。您知道Git冲突标记是否有任何语义值(例如,它们是否由Git解析)还是仅仅为了直观地看到冲突在哪里@torekMerge冲突标记对于Git来说在语义上并不重要。事实上,工作树中的内容通常是无关的,除了像git add
(从工作树复制到索引)或git diff
(可以)将提交或索引中的内容与工作树中的内容进行比较)之类的操作。