.sln 相當於VC6中 .dsw
.vcxproy 相當於VC6中 .dsp
.suo 相當於VC6中 .ncb
.vcxproj.filters 用於項目下文件的虛擬目錄
.vcxproj.user 是用戶的一些相關配置
一個問題
在用git進行版本控制時,發現問題:項目屬性 和 提交版本的 項目屬性不一樣, 但我在版本控制中又添加了.vcxproj文件。 這是爲什麼呢?
解決: 原來我提交的版本時,編譯方式是Debug-X86, 而我在新電腦上 pull下來時,打開的vs 編譯方式是 Debug-x64, 當然項目屬性不一樣了。 只需要將編譯方式改回Debug-X86就可以了。
真是個愚蠢的錯誤。
工程文件控制
vs工程中,往往包含:.sln 、.db 、.opendb 文件
sln文件 爲工程屬性文件,是我們必須添加到版本控制中的,
db文件,是項目編譯時生成的數據庫文件,非常的大,佔用空間,不需要添加到版本控制中。
opendb文件也是編譯生成的文件, 不需要添加到版本控制中。
在項目文件中,還包含了.vcxproj 、vcxproj.filters 、vcxproj.user 三個文件
.vcxproj 爲項目屬性文件,是我們必須添加到版本控制中的,
vcxproj.filters文件是過濾信息文件,解決方案中的篩選器文件就保存在此文件中, 故一般我也將該文件添加到版本控制中,
vcxproj.user是本地化用戶配置,允許多個用戶使用自己喜好的方式配置這個項目(例如打開項目時候窗體位置等與項目內容無關的配置), 不需要添加到版本控制中。
總結
在版本控制中,我們只需要添加.sln、.vcxproj、vcxproj.filters 這三種文件。