如何在git中处理.csproj

Noc*_*ceo 4 git visual-studio visual-studio-2015

我们正在使用Visual Studio 2015和git在同一个项目上工作。这可以正常工作,需要.csproj文件(项目文件)。每次将新文件添加到项目时,.csproj文件都会自动更改。因此,如果两个(或多个)人将文件添加到其本地版本,则将需要与最后提交的人进行合并。

有办法避免这种情况吗?

编辑:我可以获取,但不能拉或提交。如果我尝试拉,Visual Studio Git希望将远程.csproj文件与本地版本合并。但是它不能自动执行此操作,而我为协助它所做的每一次尝试都导致.csproj文件无法正常运行。

tor*_*rek 5

.csprojVisual Studio创建的文件是XML数据。Git对XML一无所知。它尝试将它们合并为普通文本文件。结果是很少有有效的XML,甚至很少有类似功能的东西。

默认情况下,当Git无法合并这些XML文件时,通常会发生合并冲突:Git将停止并修复该混乱情况。正确的选择取决于您。VS是否提供任何帮助的工具,我都不知道(我避免使用Windows)。另请参见对问题的描述(此链接也位于链接的问题的答案中,但我认为我应该在此处将其作为直接链接包括在内)。

有些人尝试使用联合合并来完全自动化这些XML文件的合并,因此不会发生 Git冲突。这不是一个好主意。请参阅VS 2013 C#和Git:.csproj文件在提取时不会合并以获取详细信息。