Git不跟踪Visual Studio中的配置设置

时间:2015-09-21 18:33:18

标签: git visual-studio visual-studio-2013

我有一个VC ++项目,我使用Git来编写代码。一切都很好,期望如果我将配置从Win32更改为x64,Git无法检测并跟踪该更改。当我在新机器上克隆我的存储库时,配置总是设置为Win32,即使它是签入的代码的x64。我需要将哪些文件添加到Git跟踪以启用配置跟踪?

我的.gitignore文件当前忽略了以下类型的文件。

*.dll
*.cache
*.obj
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.log
*.scc
*.bin
*.7z
*.opensdf
*.sdf
*.htm
*.suo
*.user
*.sln.docstates

1 个答案:

答案 0 :(得分:1)

在执行此操作之前,请注意微软的警告(下面)。

添加嵌套在隐藏文件夹.suo

中的隐藏文件.vs

对于我的VS2017 TestVSSol2解决方案/项目,路径如下: ~/source/repos/TestVSSol2/.vs/TestVSSol2/v15/.suo

Microsoft警告:

  

解决方案用户选项(.suo)文件包含每用户解决方案选项。不应将此文件签入源代码控制。

来自:https://msdn.microsoft.com/en-us/library/bb165909.aspx?f=255&MSPPError=-2147217396

虽然这解决了我的问题,但显然Microsoft不鼓励在.suo文件中添加任何类型的版本控制(例如git)。确实添加.suo是相当烦人的,因为它要求用户在拉动之前删除(或git重置)他们的.suo文件或整个.vs目录,否则它似乎经常导致合并冲突.suo文件。

然而,这是我能够弄清楚如何在配置属性中导致持久性更改的唯一方法。否则,诸如在静态库的解决方案中设置项目的操作就不会在存储库中捕获。

编辑:我建议在另一个文件夹中创建.suo文件的副本,然后将副本添加到存储库,而不是直接将.suo文件添加到源代码管理中。存储库的用户需要使用您在克隆/分叉时创建的副本手动覆盖他们的.suo,但是每次打开visual studio时,它都会阻止git不断检测.suo文件的更改。