Проблема с использованием SVN с VS.NET для версии скомпилированного кода - конфликт папок .svn с / bin - PullRequest
1 голос
/ 06 августа 2009

Я использую SVN для создания версии веб-проекта ASP.NET, над которым я работаю. Недавно я решил попробовать версию опубликованных версий сайта. Я фиксирую их в хранилище вместе с версиями кода с тегами Release в корне ветки. Это оказывается полезным, поскольку я могу развернуть на своем сервере с помощью SVN.

Проблема, с которой я сталкиваюсь, заключается в том, что мне пришлось создавать версии некоторых файлов в папке / bin моего проекта (библиотеки DLL без внешних ссылок), которая создала папку /bin/.svn. Проблема заключается в том, что команда VS.NET «Опубликовать» настаивает на копировании .svn из ветви разработки / bin в выходную папку / bin. Это в основном «переключает» двоичные файлы, чтобы указать на ветку dev. В результате содержимое папки / bin фактически никогда не фиксируется в папке скомпилированного bin, поскольку рабочая копия указывает на другую часть хранилища.

Есть ли способ заставить Visual Studio игнорировать папку .svn при публикации? Альтернативно, есть ли другой способ обработать включение статических .dll в проект, не помещая их в папку bin, так что / bin можно исключить из SVN (как и должно быть) (не используя GAC)?

Ответы [ 3 ]

7 голосов
/ 06 августа 2009

Определенно не помещайте папку bin в хранилище. Это навсегда оставит вам кошмары.

Просто поместите ваши статические ссылочные .dll в папку с именем «Библиотеки» или что-то в этом роде и установите для них ссылки на ваш проект. Они будут скопированы на выход автоматически.

3 голосов
/ 06 августа 2009

Я полагаю, что вы ничего не делаете в папке .bin. Вместо этого поместите все указанные сборки в папку за пределами папок проекта. Затем разверните его и постройте, где бы он ни шел. Процесс сборки вытянет все библиотеки по мере необходимости. Это исправит вашу папку .svn в папке bin!

2 голосов
/ 06 августа 2009

Хм .. Поместите их в отдельную папку в решении и сослаться на них. Теперь, почему я не думал об этом (дох!). Думаю, я слишком долго смотрел на экран.

Спасибо всем.

...