Подтвердить что ты не робот

Как разрешить... Уведомление об управлении Visual Studio Source "Недавно были добавлены проекты для этого решения"

После некоторого использования Visual Studio 2008 при открытии решения, которое было проверено в Visual Studio Team Foundation, появится диалоговое окно с сообщением:

Недавно к этому решению добавлены проекты. Вы хотите получить их от источника?

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

Кто-нибудь нашел лучший/более простой способ?

4b9b3361

Ответ 1

Эй, это на самом деле случилось со мной около 4 лет назад.

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

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

См http://social.msdn.microsoft.com/Forums/en-US/tfsversioncontrol/thread/c2822ef1-d5a9-4039-9d3e-498892ce70b6

http://www.nivisec.com/2008/09/vsts-projects-have-recently-been-added.html

(неработающая ссылка: http://technorati.com/posts/Yadz3Mj1pxHPSJLlnUs1tL1sIwU5jXa5rNBbIAnYdvs%3D)

Ответ 2

У меня это было недавно после того, как мы переместили ряд проектов в решение. В конце концов я решил, что каждый проект действительно появляется в файле решения несколько раз с информацией о пути! Таким образом, хотя путь в основной ссылке проекта был правильным, он был неправильным далее по файлу.

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

Например, первая ссылка для одного из моих проектов:

Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ObexPushVB", "Samples\ObjectPush\ObexPushVB\ObexPushVB.vbproj", "{E3692A59-D636-48E8-9B57-7DA80A88E517}"
EndProject

В моем случае путь был правильно обновлен. Но тогда у нас есть и для этого проекта:

SccProjectUniqueName8 = Samples\\ObjectPush\\ObexPushVB\\ObexPushVB.vbproj
SccProjectTopLevelParentUniqueName8 = InTheHand.Net.Personal.sln
SccProjectName8 = Samples/ObjectPush/ObexPushVB
SccLocalPath8 = Samples\\ObjectPush\\ObexPushVB

Итак, все эти пути необходимо обновить тоже! После того, как я исправил это вручную, все было хорошо. (Образец есть после исправления BTW).

Ответ 3

Это сообщение также появится, если ваше решение имеет ссылку на проект, местоположение которого находится за пределами каталога решений, но оно физически не существует (т.е. вы не проверили его, прежде чем открывать решение). Затем VSS (или TFS) передаст вам это сообщение и нажав "ОК", автоматически получит последнюю информацию о проекте, который отсутствует, поэтому у вашего решения не будет никаких выгруженных проектов.

ИЗМЕНИТЬ

Чтение, которое снова меня смущает. В основном вы получаете сообщение, если ваше решение имеет привязку источника к привязке к проекту, который не находится внутри папки, в которой находится ваше решение, и что внешний проект физически не существует на вашем компьютере. Нажав OK, вы проверите проект для вас.

Ответ 4

В моем случае это была ссылка на тестовый проект, который был удален.

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

После удаления проекта из решения сообщения больше не отображаются.

Ответ 5

Я работаю с Visual Studio 2013.

Для меня это произошло после изменения структуры папок моего решения (я добавил подпапку для проекта непосредственно в проводник исходного кода). Я избавился от этой скучной ошибки, удалив все проекты из моего решения, используя explorer. После этого я закрыл Visual Studio, вручную отредактировал файл .sln и удалил весь раздел:

GlobalSection(TeamFoundationVersionControl) = preSolution

Чтобы закончить, я просто добавил проекты обратно к решению как "Существующие проекты" с помощью explorer. Visual Studio автоматически воссоздает удаленный раздел .sln файла.

Ответ 6

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

Чтобы сократить длинную историю, эта ошибка может означать, что в файле .sln есть ссылка на файл .csproj, но сам .csproj физически отсутствует.

Ответ 7

В моем случае я переименовал (n) (выгруженный) проект в VS. Он правильно перенес проект в новую папку, и данные не были потеряны. Однако файл решения по-прежнему указывал на старый каталог, который все еще существовал, но был пуст (поэтому проект не мог быть загружен фактически).

После удаления проекта из решения (что не было проблемой, потому что папка была уже пустой), проблема была решена.

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

Ответ 8

У меня возникла эта проблема после перемещения нескольких проектов unit test, которые находились под контролем источника (VSTS) в другую папку. После этого всякий раз, когда я открывал ветку, я бы добавил, что "Проекты недавно были добавлены в это решение. Хотите ли вы получить их из источника управления?" ошибка.

По какой-то причине файл csproj из соединительной линии не находился под контролем источника, что означало, что он отсутствовал в разветвленной версии. Я считаю, что это происходит иногда после перемещения проектов, контролируемых с помощью источника.

Чтобы исправить это, я открыл исходную соединительную линию источника, использовал Source Control Explorer, чтобы добавить отсутствующий файл (ы), затем объединил соединительную линию с ветвями для копирования через отсутствующий файл csproj.

После этого я смог открыть разветвленные версии без предупреждения.