Вопрос

У меня есть проект vs.net, и после некоторого рефакторинга я изменил имя проекта.Как я могу легко переименовать базовое имя папки Windows, чтобы оно соответствовало этому новому имени проекта в проекте и решении, контролируемом TFS?
Обратите внимание: раньше я мог работать с вещами в фоновом режиме, используя SourceSafe...

Это было полезно?

Решение

Просто щелкните правой кнопкой мыши папку в TFS и выберите «Переименовать».Как только вы зафиксируете переименование, TFS внесет изменения на диск за вас.Как отметил Кевин, вам нужно убедиться, что все проверено, потому что TFS удалит старую папку и все, что в ней, и заберет переименованную папку с текущей версией файлов в ней.

И последнее замечание:Вы не можете переименовать папку, которую вы не сопоставили или из которой не выполнили команду «Получить».Я не знаю почему, но в таких случаях TFS отключит опцию «Переименовать».

По крайней мере, у меня так было, если я правильно помню.

Другие советы

  1. Регистрироваться все ожидающие изменения в папке и убедитесь, что все остальные члены команды сделали то же самое.
  2. Убедитесь, что у вас есть копия папки в вашем рабочем каталоге (в противном случае у вас не будет возможности переименовать папку в рабочем каталоге). Обозреватель системы управления версиями на следующем этапе). Получить последнюю версию в папке, чтобы получить копию, если у вас ее еще нет.
  3. Закрыть решение.
  4. Переименовать папка внутри Обозреватель системы управления версиями.Это переместит все файлы, отслеживаемые в системе контроля версий, из исходной папки вашей файловой системы в новую.Обратите внимание, что файлы, не отслеживаемые системой контроля версий, останутся в исходной папке — вы, вероятно, захотите удалить эту папку, как только убедитесь, что там нет нужных вам файлов.
  5. Открыть решение и выберите 'No', когда будет предложено получить проекты, которые были недавно добавлены в решение из системы управления версиями.Вы получите предупреждение о том, что не удалось загрузить один из проектов в решении.
  6. Выберите проект в пределах Обозреватель решений.

    Обратите внимание, что он будет выделен серым цветом и помечен как 'Недоступен'.

  7. Открой Характеристики панель.
  8. Отредактируйте 'Путь к файлу' свойство либо напрямую, либо с помощью '...' кнопка.

    Также обратите внимание, что это свойство редактируется только в Visual Studio 2010.В более новых версиях Visual Studio вам потребуется вручную редактировать пути проекта в файле решения.

  9. Щелкните правой кнопкой мыши проект в Решение Изучитер и выберите Перезагрузить проект из контекстного меню.Если вы получаете сообщение об ошибке, в котором говорится, что проект не может быть загружен из исходной папки, попробуйте закрыть решение, удалив файл suo в той же папке, что и файл решения, а затем снова откройте решение.
  10. Регистрироваться изменения как один набор изменений.
  11. Попросите других членов команды «Получить последнюю версию» решения (щелкните правой кнопкой мыши решение в Обозреватель решений и выберите «Получить последнюю версию» в контекстном меню.

Примечание:Другие предлагаемые решения, предполагающие удаление, а затем повторное добавление проекта в решение, нарушат ссылки на проект.

Если вы выполните эти шаги, вы также можете переименовать следующее по своему усмотрению.

  1. Файл проекта
  2. Пространство имен по умолчанию/корневое пространство
  3. Сборка

Также рассмотрите возможность изменения значений следующих атрибуты сборки.

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute

Вы можете просто переименовать проект (файл .Xproj и папку проекта) в TFS, удалить структуру локальных папок и все ее содержимое, а затем загрузить последнюю версию проекта.Все это зависит от того, чтобы ваш исходный репозиторий был полностью обновлен и компилируем.

Вот шаги, которые сработали у меня в Visual Studio 2008 с TFS:

  1. Закрыть решение.
  2. Переименуйте папки проекта в Source Control Explorer (щелкните правой кнопкой мыши -> переименовать).Это дублирует код в папки с новыми именами.
  3. Откройте решение и в обозревателе решений удалите старые папки/проекты и добавьте новые дубликаты с правильными именами (в старых проектах щелкните правой кнопкой мыши -> удалить, затем на решении щелкните правой кнопкой мыши -> Добавить -> Существующий проект...)

ИЛИ:После шага 2 вы можете открыть файл .sln решения в текстовом редакторе и вручную обновить имена папок проекта.В этом случае вам может потребоваться вручную извлечь файл .sln, чтобы убедиться, что ваши изменения будут зафиксированы (<- важно!).

Моя конкретная конфигурация — VS2010, подключающаяся к TFS2008.Я попробовал некоторые другие решения здесь, но возникли проблемы.Я обнаружил, что для меня работает следующее: -

  1. Удалить проект из папки, которую нужно переименовать, из решения.
  2. Сохранить решение
  3. Переименуйте папку, содержащую удаленный проект, в Система контроля версий TFS (это переименовывает локально на вашем жестком диске)
  4. Добавьте проект обратно в решение из нового местоположения.
  5. Сохранить решение
  6. Применить систему контроля версий

Теперь вы сможете переименовать папку и пересопоставить решение, все зафиксированные в одном наборе изменений.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top