我们与3" main"分支,dev
,uat
和master
。然后我们使用" feature"任何新作品的分支,从master
分支,然后将dev
,PR合并回uat
,master
。
在PR uat
期间,特别是一个开发人员看到生成的CSS几乎不变的合并冲突(我们正在使用SASS和gulp)。
虽然这听起来很意外,但差异非常令人惊讶:
+<<<<<<< destination:ac815dd…
.strip--beta .card-feed {
background: transparent;
}
+=======
+>>>>>>> source:b49e50b72ee…
或:
@media (min-width: 1024px) {
+<<<<<<< destination:ac815ddf3…
.copy h1 {
Add a comment to this line
+=======
+ .copy > h1 {
+>>>>>>> source:b49e50b72…
font-size: 34px;
line-height: 48px;
}
我不明白为什么简单删除,几行或只是>
会导致冲突。
最初,我们考虑查看行结尾等,但这是生成 ......
我们如何调查原因?有谁知道为什么会发生这种情况?
答案 0 :(得分:3)
我猜你有理由将生成的CSS添加到git中,所以我在这里忽略了这个问题。
我不明白为什么一个简单的删除,几行,或只是一个&gt;会引起冲突。
但这恰恰是冲突的原因。 Git并不关心改变有多严重。您可以指示它忽略某些空格更改,但不能将多个换行符视为一个。
两个提交A和B的3向合并如下:
我想你必须要解决的真正问题是,如果其他一切都相同,生成的CSS对于这个开发人员来说与另一个不同。也许他使用不同的(版本)工具来生成CSS,并且(工具的版本信息)工具在存储库之外?