Любые советы по использованию Subversion с файлами проекта .net? - PullRequest
3 голосов
/ 05 ноября 2008

Мы только что перешли с TFS на SVN, и пока нам это нравится.

Тем не менее, появилось несколько новых проблем.

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

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

Как вы справляетесь с этим? Любые советы?

РЕДАКТИРОВАТЬ: кстати, мы используем VisualSVN.

Ответы [ 7 ]

5 голосов
/ 05 ноября 2008

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

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

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

1 голос
/ 08 ноября 2008

Попробуйте АнхСВН . Очень доволен версией 2. Она "из коробки" игнорирует файлы .suo и т. Д., Безупречно работает с VS 2008 и бесплатна !!

1 голос
/ 05 ноября 2008

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

1 голос
/ 05 ноября 2008

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

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

1 голос
/ 05 ноября 2008

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

1 голос
/ 05 ноября 2008

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

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

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

0 голосов
/ 05 ноября 2008

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

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...