Как можно навсегда отключить интеграцию Git в Visual Studio 2013?
Я знаю, что вы можете отключить интеграцию с git, используя диалоговое окно «Инструменты / Параметры», но я заметил, что этот параметр, похоже, не сохраняется между сеансами; то есть, как только решение будет закрыто и снова открыто, интеграция с Git снова будет включена. Я предполагаю, что Visual Studio видит папку .git в дереве файловой системы моего решения.
Существует множество подключаемых модулей Visual Studio 2013, которые работают некорректно при включении подключаемого модуля Git, я предпочитаю управлять исходным кодом из командной строки и работаю над несколькими очень большими проектами, для которых интеграция с Git приводит к заметному замедлению работы. в открытии и работе с раствором. Я бы хотел его выключить навсегда, так как я им просто не пользуюсь и не нуждаюсь. Это возможно?
Как вы сказали, вы можете отключить плагин управления версиями:
- Инструменты / Параметры
- Установите флажок «Показать все настройки».
- Управление исходным кодом / выбор плагина
- Установите для параметра «Текущий подключаемый модуль управления версиями» значение «Нет».
Затем, как говорит Адэ Миллер: перезапустите Visual Studio.
Моя Visual Studio работала очень медленно, так как git plugging был включен, и мне удалось отключить его «постоянно между сеансами», выполнив следующие действия.
У меня была такая же проблема с Visual Studio 2015, где расширение NoGit даже не разрешалось устанавливать. Я использую опцию «открывать последнее решение при запуске», поэтому я подумал, что, возможно, это как-то связано с проблемой.
Поэтому я просто закрыл свое решение перед тем, как перейти в «Инструменты — Параметры — Контроль версий», затем выключил его, перезапустил VS и — вуаля, SC остался выключенным! Надеюсь, что это останется так и в других решениях.
Для меня создание репозитория с помощью следующей команды решает проблему:
Поскольку он не создает .git каталог , а только .git файл, указывающий на реальный каталог репозитория, например:
Visual Studio (по крайней мере, до VS2015 Update 3, которым я пользуюсь) этого не замечает!
Это сработало лучше, чем переменные среды, потому что у Git Extensions (которые я использую) возникла проблема с их поддержкой, но они отлично справились с .git файлом, указывающим на _git папку.
Одна из причин повторного включения git SCC в VS2015 при каждой загрузке IDE — это CodeLens. Инструменты / Параметры / Текстовый редактор / Все языки / CodeLens. Есть флажок для различных действий, связанных с TFVS и Git — установка любого из этих флажков git автоматически включит плагин Git, если он думает, что вы работаете с репозиторием git.
Бонус: классное описание.
Для Visual Studio 2015 я обнаружил, что CodeLens повторно включает подключаемый модуль Git Source Control после перезапуска. Отключение CodeLens исправило это.
(Обновление: теперь этот ответ представляет собой полностью рабочее решение, основанное на моем более глубоком понимании GIT_DIR и GIT_WORK_TREE)
Резюме: Git достаточно гибкий, чтобы вы могли переместить .git каталог за пределы рабочего каталога с файлами, извлеченными из tfs. Это позволяет иметь 100% чистую проверку tfs без каких-либо следов git, которые визуальная студия может обнаружить, сохраняя при этом возможность использовать его как репозиторий git. Ключ состоит в том, чтобы разделить git dir (хранилище репозитория git) и дерево работ (ваш проверенный исходный код).
Скажем, ваш исходный код зарегистрирован c:\work\someproject\tfscode и вы уже запускали git init его, например, Visual Studio обнаруживает c:\work\someproject\tfscode\.git каталог, и это вызывает проблемы.
Чтобы сделать жизнь приятнее, сделайте следующее:
Это отлично работает в отношении визуальной студии, поскольку тогда она полностью игнорирует все, что хранится в git.
Это сработало для меня в Visual Studio 2013 и 2015. Сохраняется, даже если вы закрываете и снова открываете Visual Studio.
Перейдите в Инструменты -> Параметры -> Управление исходным кодом -> Установить для плагина значение Нет.
Закройте Visual Studio и выполните команду ниже с правами администратора.
Удалите Microsoft GitProvider из Visual Studio 2015
- Убедитесь, что Visual Studio закрыта
- Открыть regedit
- Перейдите к HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 14.0_Config \ SourceControlProviders
- Удалите 11b8e6d7-c08b-4385-b321-321078cdd1f8 В области сведений должно быть указано GitProvider.
- Откройте Visual Studio
Мне удалось отключить встроенный поставщик Visual Studio Git, удалив все вхождения этих ключей реестра:
Целую неделю было больно, и я не знал, как запустить эту службу управления версиями в VS2015. Но надо знать, как это остановить. Вот шаги, чтобы отделить git / любой исходный элемент управления от VS2019.
Перейдите в VS -> Инструменты -> Параметры -> Управление исходным кодом -> [Текущий подключаемый модуль управления исходным кодом]
Вы получаете весь возможный контроль версий в вашей системе и вариант «Нет». Если вы выберете «Нет», все готово. Моя была исправлена сразу после выбора опции «Нет», нажмите «ОК» и перезапустите VS и больше никакого контроля версий.
Вам нужно закрыть все решения VS. запустите его, установите Menu \ tools \ options \ Source Control \ Git -> None, закройте это решение при появлении запроса. Теперь, при открытии любого другого решения, варианты остаются «Нет».
VS2015 потреблял 50% моего процессора в режиме ожидания. Я узнал, что отключение Git было решением. К сожалению, отключение Git только для того, чтобы изучить его, автоматически снова включает его.
В моем случае я действительно хотел использовать Git, но не с использованием процессора 50%.
Поскольку решение NoGit доступно только для VS2013, вы можете вместо этого загрузить: Git Source Control Provider, даже если вы не используете Git. Моя загрузка ЦП теперь составляет 2,2% вместо 50% в режиме ожидания.
У меня также есть проблемы с Git в Visual Studio, но я думаю, что наконец нашел рабочее решение. До сих пор я использовал трюк, переименовывая папку .git в _git и добавляя текстовый файл с именем .git, содержащий строку «gitdir: _git». Но после обновления до VS2019 это больше не работает.
Я пробовал много разных решений, но ни одно из них не сработало, поскольку мне нужен Git для одних проектов, а для других — нет. В моем проблемном проекте для контроля версий используется Team Foundation Server моей компании. Но поскольку я потерял код из-за неудачных слияний, сделанных TFS, я фиксирую свои изменения в локальном репозитории Git перед обновлением или фиксацией в TFS.
D:\Projects\TFS\.git Локальное репозиторий git, которое VS не следует использовать.
D:\Projects\TFS\ProjectA\$tf Файлы TFS, которые VS должен использовать для ProjectA.
Как бы я ни пытался, мне не удавалось заставить VS использовать TFS для ProjectA, когда он обнаружил папку .git в родительской папке. Мое решение — переместить папку .git в:
и создайте соединение каталогов с папкой ProjectA. Запустите командную строку с повышенными привилегиями и выполните:
mklink /J D:\Projects\TFS-GIT\ProjectA D:\Projects\TFS\ProjectA
Открыв D:\Projects\TFS\ProjectA\ProjectA.sln в Visual Studio, он не найдет никакой папки .git и будет подключаться к TFS, как должен.
Выполнение команд git из D:\Projects\TFS-GIT будет использовать те же файлы, что и Visual Studio, за исключением того, что также доступна папка .git. TortoiseGit также отлично работает из этой папки.
Мне было трудно найти решение для этого, и я сделал это после стольких попыток, поэтому я не могу быть точным. Создайте еще один локальный репозиторий с помощью GitHub Desktop в другой папке. Готово, откройте Visual Studio без загрузки проекта, теперь в Team Explorer должны отображаться оба репозитория. Выберите новый репозиторий, так как вы должны выполнить некоторые операции, на этом пункте вы можете «удалить» свой старый репозиторий, так как новый является «активным». После этого я удалил файлы .hidden .git * из прежней папки. Теперь открытие проекта не приводит к повторному созданию старого репозитория. Надеюсь это поможет.
Отключить git в Visual Studio 2013
У меня есть репозиторий, который управляется tfs. Однако локально я хотел бы управлять им через git и push-изменения в tfs. Как только я создам git repo там VS2013 в team explorer, это решение будет управляться только git. Если я пытаюсь отредактировать любой файл, он жалуется, что файл только для чтения, я не могу сохранить его в предыдущей версии. Поэтому мой вопрос: Есть ли способ для Visual Studio 2013 забыть о git вообще и управлять им как репозиторием tfs. Я могу управлять Git из командной строки. Или есть ли способ сделать это для проверки файлов из РЕПО TFS, когда я делаю изменения?
5 ответов
для вашего сценария Git-tf вероятно, лучшее решение, оно создаст локальное репозиторий git на основе вашей папки управления версиями TFVC. Когда вы закончите, вы можете переместить свои изменения из Git непосредственно в TFVC из командной строки. Поскольку вам уже удобно в командной строке, это может сработать довольно хорошо для вас.
очень сложно заставить Visual Studio в настоящее время оставаться в Team Foundation Source Control, когда есть git-РЕПО в том же папка.
как ужасное решение, закрыть решение, переименовать до _git и перезагрузить решения. Это должно вернуть TFVC, но если это не так, то повторно свяжите решение с TFVC при использовании -> системы управления версиями -> дополнительно -> Изменить Управление Версиями . Затем после регистрации снова закройте решение, переименуйте _git на .git и перезагрузить.
As Ed упоминает в комментариях, вы можете переместить .папка git в другую папку, например:
это позволяет Visual Studio использовать привязки TFVC, и вы можете сообщить командной строке git, что.каталог git находится в другом месте, используя git —git-dir=\MyProjects\GitRoot\.git аргумент команды.
вы можете установить переменную окружения с именем GIT_DIR исправить это за один раз, как упоминает @hlovdal.
и есть еще один трюк ,который @ Eric упоминает, который создает текстовый файл имена .git что есть в нем следующее:
переименовать .папка git в _git, затем убедитесь, что вы добавили _git до .gitignore
Совет: создать файл, который начинается с . из Проводника Windows вы можете использовать новая / Текст Документа:

имя файла .git. (убедитесь, что опция показать расширения файлов галочка):
Remove git integrations from VSCode
I downloaded Visual Studio Code to try out at work and I’m in love with almost everything about it. One part I am not in love with though: Git integration.
I imported my entire working folder (
14000 source files + git items), and the layout and everything within Visual Studio Code is awesome. I moved from our traditional code editor to this, because it seemed to work a lot better for me.
My main issue though, is if I am working in a file and save it, Visual Studio Code freezes up for roughly 30-60 seconds. At first I was confused, but then I noticed that the Git tab was «working.» From my best guess, after I save a file it is traversing all
14000 files and doing something — I’m not sure what. Does anyone know if there is a way to remove Git integration from VSC, or at least have it ignore doing whatever it thinks it is doing?