it-swarm.com.ru

Файл проекта был переименован или отсутствует на вашем компьютере

Я получаю эту ошибку при попытке загрузить проект VS 2008 из системы управления версиями TFS:

Файл проекта был перемещен, переименован или отсутствует на вашем компьютере

После того, как я нажму OK, проект скажет «недоступно» . В чем проблема? Как мне решить это? У меня никогда не было этой проблемы раньше. В некоторых блогах говорилось, что нужно удалить файл .suo, но я не могу найти файл .suo. Я удалил весь проект на своем локальном компьютере, чтобы в следующий раз, когда он откроется, он создал новый, но я все еще получаю ту же ошибку.

134
sineas

Обычно это помогает удалить параметры пользователя решения, также называемые «SUO».

VS до 2013 года

В старых версиях VS он хранится как «скрытый» SolutionName.suo в той же папке, что и основной файл .sln

VS2015 или новее  

В VS2015 эта же дата была перемещена в «скрытую» папку .vs в той же папке, что и основной файл .sln.

242
Stanley.Goldman

Я только столкнулся с этой проблемой, используя VS 2013 после переименования проекта. Ответ Стэнли привел меня к решению:

Закрыть VS - удалить файл .suo - запустить VS снова.

36
AndreasV

Удалите файл .suo особым образом.

  1. Не открывайте решение, когда вы удаляете скрытый файл .suo.
  2. Перезапустите VisualStudio.
  3. Откройте решение и добавьте проект без сообщения об ошибке.
19
Mikhael Loo

TFS работает, как и большинство пакетов управления исходным кодом: он запоминает то, что он поместил на ваш компьютер, поэтому, когда вы получаете «Get Latest», ему нужно только получить изменения с момента вашего последнего «Get» вместо того, чтобы получать абсолютно все.

Это имеет одно предупреждение: если вы удаляете или переименовываете локальные файлы на вашем диске, TFS не будет знать, что вы сделали это, и все равно будет думать, что они там, где он их оставил.

Если вы затем «Get Latest», он не потрудится обновить отсутствующие файлы.

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

Чтобы обойти это, вам нужно:

  • Если вы считаете, что у вас могут быть какие-то изменения, которые вы не хотите потерять, скопируйте исходную папку на свой компьютер в качестве резервной копии на всякий случай!
  • Щелкните правой кнопкой мыши проект (в Solution Explorer) или папку (в Source Control)
  • Выберите «Получить конкретную версию» из контекстного меню
  • Выберите, чтобы получить «Последнюю версию», и отметьте опцию, которая говорит (что-то вроде) «принудительно получать файлы, уже находящиеся в вашем рабочем пространстве», что говорит TFS забыть о том, что она «знает», и в любом случае снова получить все файлы.

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

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

10
Jason Williams

Хотя это хорошо известный дефект VS, мы определенно справимся с этим!

  • Откройте файл решения в режиме редактирования.

  • Измените относительный путь, чтобы он соответствовал измененному/перемещенному физическому пути.

    SccProjectUniqueName1 = Source\\Order\\Order.csproj
    SccProjectName1 = Order.ApplicationService
    SccLocalPath1 = Order.ApplicationService
    
  • Кроме того, убедитесь, что правильный относительный путь для ссылающихся проектов

    Project("{asdasd-301F-11D3-BF4B-asdasd}") = "Order",
            "Source\Order\Order.csproj", "{E25641BC-C990-40E2-8876-08AE8728F763}"
    EndProject
    
9
sandeep talabathula

Попробуйте открыть .csproj или .vbproj вместо .sln. Вероятно, произошло то, что файл .sln (решение) имеет абсолютную ссылку на файл (а не относительный путь) к составному проекту (ам). Возможно, вам придется заново создать .sln или отредактировать его вручную.

6
Lilith River

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

  1. В Team Explorer «Управление рабочими пространствами ...»

    enter image description here

  2. Нажмите «Редактировать ...»

    enter image description here

  3. Исправьте значение в «Локальная папка»

    enter image description here

  4. Наконец, удалите затронутые файлы .suo в соответствии с принятым ответом.

3
Chris Schiffhauer

Самый простой вариант, разработанный для меня:

  1. Щелкните правой кнопкой мыши проект и удалите «не загруженный» или «недоступный» проект
  2. Щелкните правой кнопкой мыши решение и добавьте «Существующий проект».
3
Arun Vinoth

Я нашел, что проще всего создать новый файл решения sln.

2
David

Очистите ваши отображения рабочего пространства (Файл -> Контроль исходного кода -> Рабочие пространства). Отредактируйте рабочую область и либо удалите все сопоставления (дополнительные последствия), либо найдите тот, который связан с этим путем к серверу. Затем откройте Source Control Explorer и переназначьте. Дважды щелкните SLN в Source Control Explorer, и он должен получить последнюю версию. Не совсем уверен, что произошло или в какое состояние вам удалось попасть, но с этим вы должны снова начать двигаться.

1
Ryan Cromwell

Я столкнулся с этой проблемой и смог ее решить, получив файлы .rptproj от коллеги и скопировав их в мой локальный каталог. Затем проект был в состоянии перезагрузить.

1
Sayward

Решение для этого

  1. Снова переименуйте папку проекта
  2. Установить конкретную версию и заставить получить в TFS
  3. убрать опцию «только для чтения и скрытый» в последней папке (не переименовывать)
  4. Теперь вы можете открыть проект без проблем
0
Saman Jayatilake

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

0
SMPH

Я потратил много времени на попытки решить эту проблему. Я проделал следующие шаги: переименовал проект, переименовал пространства имен, переименовал папку проекта, отредактировал файл .sln, отредактировал скрытый файл .suo. Проект загружен, но он был неузнаваем для TFS! Наконец я нашел это руководство .

Если вы используете Resharper и TFVC является вашим контролем версий, выполните следующие действия:

  • Щелкните правой кнопкой мыши проект в обозревателе решений, выберите «Переименовать» и введите новое имя.

  • Снова щелкните правой кнопкой мыши по проекту и выберите «Свойства». Измените «Имя сборки» и «Пространство имен по умолчанию» на вкладке «Приложение».

  • Снова щелкните правой кнопкой мыши по проекту и выберите «Refactor» -> «Настроить пространства имен». Принять изменения.

  • Измените AssemblyTitle и AssemblyProduct в Свойствах/AssemblyInfo.cs

  • Удалить каталоги bin и obj в проводнике Windows

  • Откройте Source Control Explorer и переименуйте каталог проекта. Это закроет решение. Пусть это будет закрыто.

  • Откройте файл SLN (с помощью текстового редактора, такого как Notepad ++) и измените путь к проекту (должно быть несколько мест).

  • Откройте решение снова. Очистить и восстановить проект.

0
ABS

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

Kindness,

Дэн

0
Daniel Elliott