Переименование папки проекта в VS.net под TFS

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

Запрос функции Visual Studio: visualstudio.uservoice.com/forums/121579-visual-studio/… иди и проголосуй! :-)

Tim Abell 24.05.2014 01:54
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
67
1
40 285
6
Перейти к ответу Данный вопрос помечен как решенный

Ответы 6

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

Ответ принят как подходящий

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

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

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

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

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

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

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

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

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

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

    Note that it will be grayed out and marked as 'Unavailable'.

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

    Note also that this property is only editable in Visual Studio 2010. In newer versions of Visual Studio, you will need to manually edit the project paths within the solution file.

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

Note: Other suggested solutions that involve removing and then re-adding the project to the solution will break project references.

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

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

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

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute

+1 Совершенно идеальное решение. Я также удалил старую папку, так как она больше не нужна.

Sir Crispalot 11.04.2013 18:35

+1 Сработало отлично! В VS 2012 мне пришлось закрыть решение после перезагрузки проектов (шаг 9), чтобы обеспечить правильную сборку решения.

Adam47 12.08.2014 19:37

Примечание для пользователей VS 2012: File Path на шаге 8 нельзя редактировать. После шаг 5, снова закройте решение. Найдите файл .sln, удалите атрибут «только для чтения» и вручную отредактируйте путь к проекту (в сторону верхней части файла). Сохраните файл (оставьте атрибут только для чтения отключенным), повторно откройте решение и продолжите с шага 10.

Cᴏʀʏ 04.05.2015 18:59

если у вас есть проблемы с SQL-Error 50000, сначала создайте новую папку, а затем переместите содержимое из старой в новую папку.

gReX 07.10.2015 16:53

Удаление файла suo было той частью, которую мне не хватало! Я думал, что схожу с ума, этот ответ избавил меня от головной боли.

Jakub Januszkiewicz 25.01.2016 14:07

Редактирование пути к файлу отлично работает в VS2015. MS, должно быть, восстановила эту функцию

Timothy Klenke 28.04.2016 19:28

«Переименуйте папку в TFS всего за 17 простых шагов!» :-)

user74754 11.05.2016 20:44

@TimothyKlenke Я не вижу такой возможности в 2015 году.

Joel McBeth 17.01.2017 19:18

@TimothyKlenke Я исправился, кнопка обзора в 2015 году отображается только тогда, когда вы устанавливаете фокус на поле Путь к файлу.

Joel McBeth 02.02.2017 18:49

Если есть ссылка на файл из другого проекта (скажем, B) на файл в переименованном проекте, эту ссылку также необходимо обновить. (Выгрузите B, отредактируйте файл csproj, перезагрузите B).

MBWise 20.04.2017 14:11

В VS 2017 это почти сработало. Вы не можете редактировать путь в свойствах, но вы можете изменить путь в файле .csproj и принять перезагрузку в VS. Кроме того, после этого закройте VS и удалите файл .suo. Как бы странно это ни звучало, особенно если у вас есть несколько решений, ссылающихся на .csproj, для меня VS было что-то в этом файле решения .suo, которое кэшировало старое имя пути.

paultechguy 05.04.2018 22:58

Для Visual Studio 2019 и ASP.NET Core 2.2 мне пришлось немного изменить ответ Скотта Манро. Вот что у меня сработало:

Перед началом: отметьте все изменения и сделайте резервную копию своего решения.

  1. Переименуйте проект, используя Обозреватель решений (т.е. щелкните проект правой кнопкой мыши и выберите переименовать).
  2. Переименуйте папку проекта в Обозреватель системы управления версиями.
  3. Откройте файл .sln вашего решения в текстовом редакторе и исправьте путь к файлу. (Замените любые ссылки на «OldProjectName» на «NewProjectName»).
  4. Перезагрузите свое решение в Visual Studio.
  5. Найдите и замените все старые пространства имен новым именем проекта.
  6. Выполнено. Зарегистрируйте изменения.

Сначала мне пришлось выполнить шаг 1, чтобы загрузить проект после исправления пути к файлу на шаге 3.

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