TFS не разрешает переименовывать папки, утверждает, что есть блокировки

В Visual Studio 2008 я хочу переименовать папку из-за опечатки в имени. Я переименовываю его в структуре решения. Папка и файлы .CSProj теперь извлечены, и я возвращаюсь.

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

Глядя в проводник управления версиями, я могу подтвердить, что папка и файлы в ней вообще не извлечены. Файлы .csproj и csproj.vspscc «редактируются» другим пользователем.

Что тут происходит?

Если я попытаюсь отменить изменение, я получаю то же сообщение. Я должен принудительно получить последнюю версию, прежде чем смогу отменить изменения. Что с этим тоже?

В конечном итоге исправление состояло в том, чтобы заставить всех других пользователей зарегистрироваться в .csproj, а затем переименовать папки в проводнике управления версиями. На данный момент это сработало, хотя раньше не работало.

Регистрация переименования прошла успешно, и ссылки на старые имена были очищены при последующих проверках.


person Anthony    schedule 23.02.2009    source источник


Ответы (6)


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

Для любого действия по переименованию папки все должны быть вне проекта.

person NotMe    schedule 19.03.2009
comment
Что за хрень? Это действительно так? - person Thomas Eyde; 23.06.2009
comment
Не совсем, не проверяйте, просто получите последнюю версию, а затем заблокируйте папку. Вы сможете переименовать его. - person Cédric Guillemette; 24.03.2011

Если Visual Studio начинает работать странно, попробуйте прямо в системе управления версиями TFS. У меня была аналогичная проблема на прошлой неделе.

person Gerrie Schenck    schedule 23.02.2009

Вместо того, чтобы пытаться возвращать объекты с открытым решением, откройте Visual Studio без SLN, перейдите в Team Explorer и перейдите к папке системы управления версиями для целевого решения.

Регистрация из окна Source Control Explorer.

Вы сможете проверить это сейчас. Наслаждаться.

person Josh DeLong    schedule 30.03.2011
comment
Это сделало это для меня. Благодарю вас! - person Bonez024; 23.06.2020

Прежде чем отменить переименование обратно в старое имя, оно обновит имя проекта TFS. После этого отмените изменения вашего проекта. Аналогичная проблема у меня была после сохранения текущего решения с другим именем. Он создал новое решение, но при этом проверил старое решение в TFS, переименовав его в новое, и не дал отменить переименование извлеченного. Чтобы решить эту проблему, я загрузил новое (переименованное) решение, а затем сохранил его со старым именем. Он изменил решение для проверки на предыдущее имя, после чего я мог отменить его за 2 шага:

  1. отменить .sln, после этого
  2. отменить .vssscc

BR

person Community    schedule 19.03.2009

У меня тоже проблемы с переименованием папок. Для меня ни один из предложенных подходов не работает. Поскольку проблема возникает только у моего клиента и ни у одного из клиентов других членов команды, похоже, это проблема клиента. Поэтому я переименовал локальный исходный каталог и снова все загрузил, не помогло. Я переустанавливал клиент TFS, тоже не помогло.

Но, по крайней мере, я нашел один способ: сначала закрыть решение, а затем зарегистрироваться. Это единственный способ для меня сейчас переименовать любые папки. Кто-нибудь знает, почему это и как я могу это исправить?

person Community    schedule 01.04.2009

Закройте решение, выбрав «Файл» -> «Закрыть решение», а затем попробуйте вернуть файл. Этот подход работал для меня

person Manoj CM    schedule 26.05.2017