Как заставить Visual Studio Team Foundation Server видеть, что я переместил код в другую папку? - PullRequest
11 голосов
/ 14 марта 2012

Я переместил некоторый код со своего диска c на диск d. Когда я открыл решение, он сказал мне, что «Решение, похоже, находится под контролем исходного кода, но его обязательная информация не может быть найдена. Поскольку невозможно автоматически восстановить эту недостающую информацию, проекты, чьи привязки отсутствуют, будут рассматриваться как не под контролем источника. "

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

Я попытался выбрать решение в обозревателе решений и выберите Файл => Контроль источника => Изменить элемент управления, но он не позволяет мне выполнить привязку. Столбцы Имя сервера и Привязка к серверу имеют "".

Ответы [ 4 ]

14 голосов
/ 14 марта 2012

Вообще говоря, расположение кода на вашем компьютере зависит от того, где находится ваше рабочее пространство.

Если вы перенесете свою рабочую область на диск D:, тогда проблем быть не должно.

Однако, если вы просто использовали Проводник для копирования файлов в новое место, тогда VSне сможет поддерживать привязки.

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

Во-первых, отложите его и отмените изменения.

Затем перейдите в Файл |Контроль источника |Workspaces.

Нажмите на имя рабочего пространства, а затем кнопку «Изменить ...».

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

3 голосов
/ 14 марта 2012

Вам нужно будет отредактировать ваше рабочее пространство для TFS Server, чтобы узнать об изменениях, произошедших на вашем локальном компьютере. Чтобы изменить рабочее пространство, в Visual Studio:

  • убедитесь, что у вас нет ожидающих изменений; также временно скопируйте папку с исходным кодом в какое-то место, чтобы быть в безопасности (вы можете удалить после того, как все настроено)
  • Перейти к Source Control Explorer
  • найдите раскрывающийся список "Рабочая область:"
  • выберите пункт «Рабочие пространства» из выпадающего списка (откроется диалоговое окно «Управление рабочими пространствами»
  • если у вас есть несколько рабочих областей, выберите соответствующую из списка в диалоговом окне
  • нажмите кнопку «Редактировать» (откроется диалоговое окно «Редактировать рабочее пространство ...»)
  • внизу в диалоговом окне вы увидите сетку "Рабочие папки"
  • нажмите на соответствующую строку в сетке и измените путь «Локальная папка», чтобы указать новую папку

Иногда в TFS и Visual Studio возникают проблемы с синхронизацией этих изменений рабочего пространства. Я всегда закрывал Visual Studio и перезапускал его, чтобы синхронизировать изменения в любое время после внесения изменений, связанных с рабочей областью.

Надеюсь, это поможет.

2 голосов
/ 14 марта 2012

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

1 голос
/ 14 марта 2012

При перемещении файлов / папок для выполнения перемещений в ожидании изменений необходимо использовать клиент TFS для выполнения перемещений.

Для одного или двух файлов пользовательский интерфейс Team Explorer работает нормально, для большей части командная строка самая простая.

См. tf.exe rename на MSDN (tf move - псевдоним для переименования). Существует также пошаговая справка по использованию графического интерфейса: Перемещение, переименование и удаление файлов и папок с управлением версиями .

...