Anhksvn + Visual Studio - работа со связанными файлами - PullRequest
0 голосов
/ 27 мая 2011

Я мог бы использовать несколько советов. Я нахожусь в процессе принятия Subversion, и я пытаюсь поместить некоторые существующие проекты Visual Studio 2010 в хранилище. У меня есть текущая версия AhnkSvn.

Мои проекты организованы как;

VS2010_projects \ Project_A

VS2010_projects \ Project_B

VS2010_projects \ Project_C

VS2010_projects \ Common_code

Где Project_A, Project_B и Project_C могут ссылаться на один или несколько файлов в «Common_Code» В Visual Studio эти файлы будут добавлены с помощью «Добавить как ссылку».

В "Common_code" нет никакого реального проекта, только набор полезных файлов кода, которые мы, вероятно, будем использовать повторно в разных проектах. (Если у нас есть модуль или класс, который повторно используется в различных проектах, мы часто сохраняем одну мастер-копию в «общем коде» и ссылаемся на нее.) Visual Studio не имеет проблем с этим.

Когда я добавляю любой из реальных проектов в Subversion, все их собственные файлы добавляются просто отлично, но связанные файлы игнорируются. (И, как следствие, если я тогда получу рабочую копию этих файлов, то будут обработаны только файлы проекта, я не получу копию связанных файлов.) Если я щелкну правой кнопкой мыши по любому из связанных файлов, я получу единственные варианты подрывной деятельности, чтобы обновить их статус или выбрать рабочую папку.

Мне было интересно, как правильно справиться с этой ситуацией?

Любой совет будет высоко ценится

Спасибо!

Роберт

Ответы [ 2 ]

0 голосов
/ 28 июля 2011

Спасибо за совет, я действительно сделал что-то похожее на ваше предложение.Я не хотел создавать полноценную библиотеку, но я сделал фиктивный проект и вложил в него свои общие файлы.Затем я добавил фиктивный проект в репозиторий.

Теперь AhnkSvn, похоже, удовлетворен тем, что связанные файлы находятся под контролем subversion, и, похоже, отлично с ними справляется.(Я не добавил никаких ссылок на фиктивный проект в мои существующие проекты - они просто используют связанные файлы, как и раньше - но теперь AhnkSvn показывает мне их статус и позволяет мне получить последнюю версию и зафиксировать изменения.)

Я вижу причину наличия надлежащей библиотеки - но это означало бы изменение большого количества существующих проектов.Такой подход позволяет мне начать работу с Subversion, не требуя этих изменений.

0 голосов
/ 26 июля 2011

если я правильно понимаю ваш вопрос, то я думаю, что SVN действует желаемым образом.Связанный файл - это просто ссылка на другой файл.Эта ссылка существует только в файле .csproj, который зарегистрирован. Не имеет смысла иметь две копии одного и того же файла в системе контроля версий, и это может привести к проблемам с версиями.Когда вы в первый раз извлекаете из своего репозитория сборку своих проектов, следует скопировать файлы из Common_code в места, к которым они привязаны.

Кроме того, у нас было много случайных проблем со связанными файлами .csproj.и SVN, и поэтому старайтесь избегать связанных файлов, где это возможно.Очевидно, что лучший способ повторно использовать файлы в проектах - просто вставить их в библиотеку, а затем ссылаться на эту библиотеку.Это должно работать нормально, за исключением некоторых файлов, таких как Javascript / CSS.

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

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