Изменение имен папок в Visual Studio при использовании SVN - PullRequest
11 голосов
/ 17 мая 2010

Я использую VS2008 / VS2010 с Resharper 5, TortoiseSVN 1.6.8.19260-x64 и AnkhSVN 2.1.8420.8. Большинство операций, которые я выполняю в Visual Studio, хорошо отражаются в SVN, однако переименование папок в проекте может вызвать проблемы, когда я пытаюсь отправить свои изменения. Также необходимо обновить все пространства имен в исходных файлах C # в переименованной папке, чтобы отразить изменение имени.

Как лучше всего переименовать основную папку проекта или любые подпапки и убедиться в отсутствии проблем с SVN? Это должно быть сделано вне Visual Studio?

Каков наилучший способ обновить все изменения пространства имен? Является ли поиск / замена единственным способом?

Существуют ли передовые практики в отношении имен папок и их содержимого?

Ответы [ 4 ]

5 голосов
/ 17 мая 2010

Да, вы переименовываете вне Visual Studio.

Используя TortoiseSVN в проводнике Windows, сделайте переименование через контекстное меню TortoiseSVN в рассматриваемой папке. Проект в Visual Studio обнаружит изменения на диске и попросит перезагрузить.

Вы также можете сделать исключение из проекта в Visual Studio, затем переименовать и затем снова включить новый путь.

Редактировать: Согласно @Sander Rijken ниже, AnkhSVN отслеживает переименование и следит за тем, чтобы переименование было правильно зарегистрировано в рабочей копии SVN. Если у вас не установлен AnkhSVN в дополнение к TortoiseSVN, хотя это не будет работать, и вы должны сделать, как я сказал выше.

3 голосов
/ 29 декабря 2011

Плагин Agent SVN реализует интерфейс MS-SCCI , который позволяет интегрироваться с Visual Studio.

Поскольку MS-SCCI определяет операцию переименования файла, это означает, что агент SVN может переименовывать файлы из среды IDE, как и любой плагин, который также реализует MS-SCCI *. 1010 *.

3 голосов
/ 11 июня 2010

Вы должны иметь возможность переименовывать папки в Visual Studio при запуске AnkhSvn. Также при использовании инструментов рефакторинга, таких как Resharper, для изменения пространства имен в соответствии с новым именем папки, у меня все работает как положено.

0 голосов
/ 17 мая 2010

То, что я обычно делаю, когда нужно выполнить переименование папки, это сначала переименовать папку с помощью tortoiseSVN, затем исключить / включить папку в VS и, наконец, переименовать все пространства имен (с Resharper это просто вопрос перехода от файла к файлу и Alt + Введите (ing) в директиве пространства имен, чтобы переименовать соответствующим образом.

...