Для проекта .Net, какие расширения файлов я должен исключить из системы контроля версий? - PullRequest
3 голосов
/ 23 декабря 2009

Каждый раз, когда я запускаю проект, мне нужно тщательно продумывать, какие файлы исключить из системы контроля версий. Кто-то составил список критериев, чтобы я мог посмотреть его с самого начала? Я работаю самостоятельно, поэтому я не дошел до этого. Я ценю, что в случае DLL вы хотели бы включить некоторые и исключить другие, так что это зависит не только от расширения файла. Мои проекты ASP.Net, хотя общее обсуждение других шаблонов также было бы полезно.

Ответы [ 5 ]

9 голосов
/ 23 декабря 2009

С http://blog.goneopen.com/2009/06/git-excludes-for-dotnet/:

.DS_Store
._*
TestResults
*Resharper*
**.ReSharper**
**\_ReSharper.**
*.bak
*.cache
*.resharperoptions
*.suo
*.user
*.vsprops
*/TestResults
*\bin*
*\obj*
_ReSharper.*
5 голосов
/ 23 декабря 2009

Если вы используете ReSharper , обязательно исключите _Resharper* папки

Если вы используете Subversion для управления исходным кодом, то плагин VisualSVN Visual Studio будет автоматически управлять исключениями для вас.

Обязательно включите любые сторонние библиотеки, на которые ссылается ваш проект, которых не будет в GAC ваших машин сборки или развертывания. Наша практика - иметь папку lib, в которой живут все такие библиотеки, и мы добавляем ссылки на них из этой папки. Это гарантирует, что свойство hintpath в файле csproj является правильным (оно хранит относительный путь к указанной DLL).

3 голосов
/ 23 декабря 2009

Как правило, только файлы управления исходным кодом, необходимые для сборки приложения.

3 голосов
/ 23 декабря 2009

Не контролируйте исходные папки bin и obj, а также файлы *.suo и *.user (если вы используете Visual Studio).

Если вам неудобно хранить сторонние библиотеки DLL в управлении исходным кодом, попробуйте Componento , который, как и прежде, еще не имеет базы данных значительных компонентов.

1 голос
/ 23 декабря 2009

Общие ингоры из папки проекта:

*.Cache
*.user
bin
obj

И из решения (уровень вверх)

*.cache
_PublishedWebSites
*.suo

У нас также есть следующее - это специфичные для экземпляра настройки конфигурации, на которые ссылаются общие конфигурации (например, web.config для приложений asp.net)

AppSettings.config
Provider.config
connections.config

Существуют файлы .config.sample, которые контролируются версией .

Вы, вероятно, должны установить bin, obj, * .cache, * .user и * .suo как глобальные в вашей настройке Subversion - но так как это (если память служит) зависит от машины, вы, вероятно, в конечном итоге будете делать явные все равно игнорирует

...