通常,当我们将功能分支与主分支或任何其他分支合并时,如果相同的文件在不同的分支但在不同的行上被修改,那么GIT会自动解决冲突。我们不希望这些合并自动发生,并期望GIT应该警告我们在两个分支中修改的公共文件列表将被合并。
例如,在Master中,我们有如下文件test1.txt
AAA
BBB
从主文件test1.txt和更新文件test1.txt创建的Feature分支(feature/test1)
AAA
BBB
CCC
还添加了新文件Test2.txt
如果我合并master中的功能分支,那么这将自动解决冲突,并成功合并文件内容。我们希望如果相同的文件在feature和master分支中被修改,那么自动合并不应该发生,但是即使它应该警告test1.txt被修改并且需要手动合并。
请协助如何实现。
发布于 2020-06-29 21:55:38
不是自动解决方案,但您可以获得在两个分支中修改的文件列表,如下所示:
(git log --format="" --name-only branch1..branch2 | sort -u
git log --format="" --name-only branch2..branch1 | sort -u) |
sort |
uniq -c |
sed '/ *1 /d; s/ *[0-9][0-9]* //'Edit:已更新,以确保每个文件在每个git log命令中仅表示一次。
发布于 2020-06-29 22:34:57
看起来你的意图是在合并到master之前检查所有的代码。这通常是通过Github/Bitbucket中的拉取请求功能或Gitlab中的合并请求功能来实现的。这就是你要找的吗?
https://stackoverflow.com/questions/62638966
复制相似问题