[visual-studio] 我應該將Visual Studio .suo和.user文件添加到源代碼管理中嗎?


7 Answers

您不需要添加這些內容 - 它們包含每個用戶的設置,而其他開發人員不會需要您的副本。

Question

Visual Studio解決方案包含兩種類型的隱藏用戶文件。 一個是解決方案.suo文件,它是一個二進製文件。 另一個是項目.user文件,它是一個文本文件。 這些文件究竟包含哪些數據?

我也一直想知道我是否應該將這些文件添加到源代碼管理(在我的情況下是Subversion)。 如果我不添加這些文件並且其他開發人員檢查了解決方案,Visual Studio會自動創建新的用戶文件嗎?




我們不提交二進製文件(* .suo),但我們提交.user文件。 .user文件包含例如用於調試項目的啟動選項。 您可以在選項卡“調試”中找到項目屬性中的開始選項。 我們在一些項目中使用了NUnit,並將nunit-gui.exe配置為項目的開始選項。 如果沒有.user文件,每個團隊成員都需要單獨配置它。

希望這可以幫助。




這些文件是用戶特定的選項,應該獨立於解決方案本身。 Visual Studio將根據需要創建新的,因此它們不需要簽入到源代碼控制。 事實上,最好不要這樣做,因為這允許個人開發人員按照他們認為合適的方式定制他們的環境。




這似乎是微軟對此事的看法: http://social.msdn.microsoft.com/forums/en-US/vssourcecontrol/thread/dee90d75-d825-4c76-a30f-016eab15ef7f : http://social.msdn.microsoft.com/forums/en-US/vssourcecontrol/thread/dee90d75-d825-4c76-a30f-016eab15ef7f

我不知道為什麼你的項目將DebuggingWorkingDirectory存儲在suo文件中。 如果這是用戶特定的設置,則應考慮將其存儲在* .proj.user文件中。 如果該設置可以在所有使用該項目的用戶之間共享,則應考慮將其存儲在項目文件本身中。

不要想到將suo文件添加到源代碼管理中! SUO(soluton用戶選項)文件旨在包含用戶特定的設置,不應在使用相同解決方案的用戶之間共享。 如果你要在scc數據庫中添加suo文件,我不知道你會打破IDE中的其他什麼東西,但是從源代碼管理的角度來看,你會打破web項目的scc集成,使用Lan vs Internet插件由不同的用戶進行VSS訪問,甚至可能導致scc完全中斷(存儲在suo文件中的VSS數據庫路徑可能對您有效,但可能對另一用戶無效)。

阿林·康斯坦丁(MSFT)




它們包含通常分配給單個開發人員的項目特定設置(例如,在調試應用程序時啟動的項目和啟動頁面)。

所以最好不要將它們添加到版本控制中,讓VS重新創建它們,以便每個開發人員都可以擁有他們想要的特定設置。




使用Rational ClearCase的答案是否定的,只有.sln&。* proj應該在源代碼控制中註冊,我無法回答其他供應商。 如果我正確記得這些文件是“用戶”特定的選項,你的環境。




不,你不應該將它們添加到源代碼控制中,因為 - 正如你所說的 - 它們是用戶特定的。

SUO(解決方案用戶選項):記錄您可能與解決方案關聯的所有選項,以便每次打開它時都會包含您所做的自定義。

.user文件包含項目的用戶選項(而SUO用於解決方案)並擴展項目文件名(例如anything.csproj.user包含用於anything.csproj項目的用戶設置)。




msdn.microsoft.com/en-us/library/bb165909.aspx ,它明確指出

解決方案用戶選項(.suo)文件包含每個用戶的解決方案選項。 這個文件不應該簽入到源代碼控制

所以我會說,在檢查源代碼控制中的東西時忽略這些文件是非常安全的。






Related