2008-11-04 2 views
3

Мы просто переключились с TFS на SVN, и до сих пор мы это любим.Любые советы по использованию Subversion с файлами проекта .net?

Однако он действительно представил несколько новых проблем.

Один из способов обработки файлов проекта (.vbproj). Файл .vbproj, конечно, всегда меняется, поскольку файлы и ссылки изменяются, и если несколько человек сталкиваются с конфликтами, будут возникать конфликты.

Как ни странно, в TFS нам никогда не приходилось иметь дело с управлением этими конфликтами, эта деталь была автоматически обработана. Теперь в SVN мы перебираем XML в инструменте слияния, и уже были некоторые ошибки.

Как вы справляетесь с этим? Какие-нибудь советы?

EDIT:, кстати, мы используем VisualSVN.

ответ

5

В SVN основные проблемы с файлами * proj - это когда люди перемещают файлы в разные папки и/или когда они одновременно добавляют и удаляют одинаково названные файлы, как правило, в начале проекта.

Как только имена файлов и структура проекта станут более стабильными, этого больше не будет.

Также включайте только файлы .sln и .vbproj, не включайте постоянно изменяющиеся файлы .suo, чтобы уменьшить головные боли.

1

Эта особая проблема возникает, если несколько разработчиков добавляют файлы в один и тот же проект.

Чтобы разрешить конфликт, когда несколько разработчиков добавили файлы в один и тот же проект, вы обычно можете заставить его работать, разрешив использование опции «mine before theirs». Он добавит ваши изменения вместе.

Эта проблема и другие проблемы слияния облегчаются путем частого принятия и обновления. Зафиксируйте один раз в день или больше, если это возможно. Чем дольше вы идете без обновления и фиксации, тем больше боли вы и ваша команда будете чувствовать.

+0

Как насчет слияния филиалов? Здесь мы всегда чувствуем боль. – 2011-03-02 15:21:13

0

Вам нужен достойный клиент, такой как Тороиза. Иногда вы периодически сталкиваетесь с конфликтами в автоматическом слиянии, но у ive никогда не было такого с .vbproj, и они очень легко исправляются с помощью программы diff.

id использовать _svn вместо .svn, по нескольким причинам, я не могу вспомнить, почему сейчас с верхней части головы, но «.» причинил мне печаль.

убедитесь, что вы не совершаете файлы .user и .suo, иначе вы будете продолжать получать настройки VS для проекта, раздражающие!

Вы также можете получить клиентские дополнения для VS, такие как ankh и visual svn, ив только использовал ankh для бит, но он был немного медленным, но это был, вероятно, мой компьютер.

+0

_svn vs .svn была совместимой с ASP.NET. – wasker 2008-11-08 18:41:11

+0

Чтобы быть более точным, _svn требуется только при использовании Visual Studio .NET или Visual Studio .NET 2003, 2005 и выше, не имеет ошибки – 2008-11-30 23:21:47

1

Что мы обычно делаем, это обновление * proj file + добавление или перемещение заглушки файла + фиксация всего сразу. Сделайте операцию как атомную и держите ее как можно короче.

1

Вы уверены, что ваш файл проекта не отмечен как двоичный? Если ваш .vbproj-файл имеет свойство svn: mime-type со значением, которое не начинается с «text /» Автоматическое слияние Subversions будет отключено.

Когда мы обратились из VSS пару лет назад, большинство файлов проекта были помечены как двоичные.Удаление свойств типа mime устраняет большинство случаев конфликтов.

1

Пробег: VisualSVN. Он работает совместно с TortoiseSVN, чтобы управлять всем для вас и интегрировать функциональность Subversion с Visual Studio. Он также устанавливает svn: ignore для пользовательских файлов проекта и двоичных файлов, чтобы сохранить их в хранилище. Хорошо стоит усилий.

+0

Да, VisualSVN - это путь. – 2011-02-14 22:40:38

1

Пробег: AnkhSVN. Очень доволен версией 2. Из коробки он игнорирует файлы .suo и т. Д., Работает безупречно с VS 2008, и это бесплатно!

Смежные вопросы