Как я могу полностью удалить TFS Bindings

У меня есть решение, которое содержит много проектов,

Я хотел бы полностью удалить привязки управления исходным кодом, как я могу это сделать?

Обновление: что я действительно хочу сделать, так это переместить одно решение и его проекты из TFS 2005 -> 2008. Вот почему я удаляю привязки, есть ли лучший способ сделать это?

14 ответов

Решение

Файл -> Контроль исходного кода -> Дополнительно -> Изменить контроль исходного кода, а затем отсоедините и / или отключите все проекты и решение.

Это должно удалить все привязки из файлов решения и проекта. (После этого вы можете переключить поставщика SCC в Сервис -> Параметры -> Контроль источника -> Выбор подключаемого модуля).

Спецификация SCC предписывает, что все поставщики SCC должны реализовывать это поведение. (Я проверял это только для VSS, TFS и AnkhSVN)

У меня нет меню File -> Source Control в Visual Studio, потому что я никогда не использовал TFS с этой установкой Visual Studio.

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

"Go Offline

The Team Foundation Server http://some-other-guys-tfs-server/ 
is currently unavailable.

The solution will be opened offline."

Чтобы избавиться от этого, я удалил.suo рядом с файлом.sln, а затем открыл файл.sln в Блокноте и удалил весь этот раздел:

GlobalSection(TeamFoundationVersionControl) = preSolution
    SccNumberOfProjects = 2
    SccEnterpriseProvider = {xxxxx}
    SccTeamFoundationServer = http://some-other-guys-tfs-server/
    SccLocalPath0 = .
    SccProjectUniqueName1 = xxDemo\\xxDemo.csproj
    SccProjectName1 = xxDemo
    SccLocalPath1 = xxDemo
EndGlobalSection

Сохраните.sln в Блокноте, а затем откройте в Visual Studio, проблема решена.

Обновление: Saveen Reddy создал инструмент для этого. Я не пробовал это все же.

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

Если кому-то нужно сделать это вне контекста приложения Visual Studio - например, через командную строку, я написал небольшой инструмент, который будет вырезать привязки управления исходным кодом из файлов решений и проектов. Источник доступен здесь: https://github.com/saveenr/VS_unbind_source_control

Следующие работы для меня:

  1. Удалите все файлы.vssscc (привязка решения) и.vspscc (привязка проекта)
  2. Удалить блок GlobalSection(TeamFoundationVersionControl) = preSolution из файла решения

Там может быть также информация относительно контроля источников в proj файл в тегах

<SccProjectName>SAK</SccProjectName> <SccLocalPath>SAK</SccLocalPath> <SccAuxPath>SAK</SccAuxPath> <SccProvider>SAK</SccProvider>

SAK заявляет: "Должен уже знать", чтобы его можно было сохранить.

Старый пост, так что просто добавлю к ответам @Matt Frear и @Johan Buret. Оба работают.

Но в случае с Мэттом вам также необходимо установить эти (VS 2012) в Блокноте / текстовом редакторе:

SccProjectName = ""
SccAuxPath = ""
SccLocalPath = ""
SccProvider = ""

Для каждого проекта в файле решения (.sln).

Ответ @ Йохана эффективно делает это....

Иногда информация о привязке кэшируется

Чтобы очистить кэш Team Explorer:

Go to C:\Users\<user>\AppData\Local\Microsoft\Team Foundation\2.0
Delete or rename the Cache folder.

Это пришло с сайта, который я не смог найти сейчас. Спасибо за этого парня за отзыв.

Вы можете попробовать использовать этот инструмент, который автоматически удаляет привязки Team Foundation из проекта. http://www.softpedia.com/get/Programming/Other-Programming-Files/Team-Foundation-Binding-Remover.shtml

  1. Перейдите в Файл -> Контроль источника -> Дополнительно -> Изменить контроль источника (если элемент управления изменением источника не появляется, нажмите на решение в обозревателе решений и попробуйте снова)
  2. Убрать решение и все проекты

Теперь щелкните правой кнопкой мыши на решении, и вы увидите "Добавить проект в систему управления версиями". Если вы хотите снова добавить проект в систему управления версиями, у вас могут появиться ошибки, в которых вас попросят изменить папку решения в TFS. это происходит потому, что в вашем решении еще есть какое-то отображение в рабочей области. удалить сопоставление или удалить рабочее пространство. Теперь ваше решение полностью отвязано и не сопоставлено с TFS или рабочими пространствами.

Я нашел этот инструмент, который помог мне полностью избавиться от привязки tfs, которую он нашел здесь https://marketplace.visualstudio.com/items?itemName=RonJacobs.CleanProject-CleansVisualStudioSolutionsForUploadi

он создает zip с удаленной исходной привязкой без изменения оригинального проекта.

В визуальной студии 2015,

  1. Развяжите решение и спроектируйте File->Source Control->Advanced->Change Source Control
  2. Удалить кеш в C:\Users\<user>\AppData\Local\Microsoft\Team Foundation\6.0

В VS2017

  1. перейти на главную страницу в Team Explorer
  2. Нажмите на Настройки в разделе проекта
  3. Нажмите на Настройки репозитория в разделе Git
  4. В следующем окне см. Раздел " Remotes ". вы увидите вариант для удаления

NB: я проверяю это для git-репозитория

Другой вариант

Удалить рабочее пространство

переназначить при необходимости

Не забудьте проверить, откат (Отмена ожидающих изменений)

прежде чем удалить рабочее пространство

Это самый быстрый и надежный

Удачи

Здесь вы можете найти другой инструмент (включая исходный код), который удаляет след SCC из файла решения и проекта, а также файлов.vssscc и.vspscc. Кроме того, он удаляет выходные и другие настраиваемые каталоги.

Hth

Стефан

VS2013 перейдите в меню Файл -> Контроль источника -> Дополнительно -> Изменить контроль источника

Выберите Solution/Project для отмены привязки и на панели инструментов нажмите Unbind

Перейдите в меню "Сервис" -> "Параметры", в окне "Параметры" на левой панели щелкните узел "Контроль источника" и выберите "Выбор модуля". В раскрывающемся списке "Текущий источник" выберите "Нет".

РЕДАКТИРОВАТЬ Вышеупомянутое решение не работает для моего проекта VS2013, однако я решил его, как указано выше, и поделился им, если вы считаете, что оно не работает для вас, пожалуйста, сообщите причину, что с ним не так. Благодарю.

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