Как я могу полностью удалить 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
Следующие работы для меня:
- Удалите все файлы.vssscc (привязка решения) и.vspscc (привязка проекта)
- Удалить блок 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
- Перейдите в Файл -> Контроль источника -> Дополнительно -> Изменить контроль источника (если элемент управления изменением источника не появляется, нажмите на решение в обозревателе решений и попробуйте снова)
- Убрать решение и все проекты
Теперь щелкните правой кнопкой мыши на решении, и вы увидите "Добавить проект в систему управления версиями". Если вы хотите снова добавить проект в систему управления версиями, у вас могут появиться ошибки, в которых вас попросят изменить папку решения в TFS. это происходит потому, что в вашем решении еще есть какое-то отображение в рабочей области. удалить сопоставление или удалить рабочее пространство. Теперь ваше решение полностью отвязано и не сопоставлено с TFS или рабочими пространствами.
Я нашел этот инструмент, который помог мне полностью избавиться от привязки tfs, которую он нашел здесь https://marketplace.visualstudio.com/items?itemName=RonJacobs.CleanProject-CleansVisualStudioSolutionsForUploadi
он создает zip с удаленной исходной привязкой без изменения оригинального проекта.
В визуальной студии 2015,
- Развяжите решение и спроектируйте
File->Source Control->Advanced->Change Source Control
- Удалить кеш в
C:\Users\<user>\AppData\Local\Microsoft\Team Foundation\6.0
В VS2017
- перейти на главную страницу в Team Explorer
- Нажмите на Настройки в разделе проекта
- Нажмите на Настройки репозитория в разделе Git
- В следующем окне см. Раздел " Remotes ". вы увидите вариант для удаления
NB: я проверяю это для git-репозитория
Другой вариант
Удалить рабочее пространство
переназначить при необходимости
Не забудьте проверить, откат (Отмена ожидающих изменений)
прежде чем удалить рабочее пространство
Это самый быстрый и надежный
Удачи
Здесь вы можете найти другой инструмент (включая исходный код), который удаляет след SCC из файла решения и проекта, а также файлов.vssscc и.vspscc. Кроме того, он удаляет выходные и другие настраиваемые каталоги.
Hth
Стефан
VS2013 перейдите в меню Файл -> Контроль источника -> Дополнительно -> Изменить контроль источника
Выберите Solution/Project для отмены привязки и на панели инструментов нажмите Unbind
Перейдите в меню "Сервис" -> "Параметры", в окне "Параметры" на левой панели щелкните узел "Контроль источника" и выберите "Выбор модуля". В раскрывающемся списке "Текущий источник" выберите "Нет".
РЕДАКТИРОВАТЬ Вышеупомянутое решение не работает для моего проекта VS2013, однако я решил его, как указано выше, и поделился им, если вы считаете, что оно не работает для вас, пожалуйста, сообщите причину, что с ним не так. Благодарю.