Как использовать код Visual Studio в качестве редактора по умолчанию для Git
при использовании git в командной строке мне интересно, можно ли использовать код Visual Studio в качестве редактора по умолчанию, т. е. при создании комментариев фиксации и просмотре различий файла из командной строки.
Я понимаю, что его нельзя будет использовать для выполнения слияний (по крайней мере, в данный момент), но кто-нибудь знает, можно ли использовать его для просмотра diff, и если да, то какие параметры командной строки потребуются в нем .gitconfig файл, чтобы сделать это случилось?
обновление 1:
Я пробовал подход, похожий на то, что я сделал для Notepad++ в прошлом, т. е.
#!/bin/sh
"c:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
и используется:
#!/bin/sh
"C:Usersgep13AppDataLocalCodeapp-0.1.0Code.exe" "$*"
но это приводит к сообщению об ошибке:
C:temptestrepo [master +1 ~0 -0]> git commit
[8660:0504/084217:ERROR:crash_reporter_win.cc(70)] Cannot initialize out-of-process crash handler
Aborting commit due to empty commit message.
C:temptestrepo [master +1 ~0 -0]>
код открывается правильно, с ожидаемым содержимым, но он не ждет ответа, т. е. нажмите кнопку Сохранить и закройте окно, чтобы вернуться к приглашению.
обновление 2:
Я только что получил ответ от одного из разработчиков, работающих над VSCode. Похоже, что эта функция в настоящее время не поддерживается :-(
https://twitter.com/IsidorN/status/595501573880553472
Если вы заинтересованы в том, чтобы эта функция была добавлена, вы можете подумать о добавлении своих голосов здесь:
обновление 3:
Я достоверно информирован о что эта функция была подобрана командой VSCode, поэтому я с нетерпением жду будущего релиза, который будет включать ее.
обновление 4:
спасибо @ F-boucheros комментарий ниже я смог получить VS-код, работающий в качестве редактора по умолчанию для комментариев фиксации, перебазирования и т. д. Я все равно хотел бы посмотреть, можно ли использовать его в качестве инструмента diff.
обновление 5:
согласно принятому ответу на вопрос, теперь это возможно с помощью выпуска кода V1.0.
10 ответов:
в самой последней версии (v1. 0, выпущенной в марта 2016), теперь вы можете используйте VS Code в качестве инструмента git commit/diff по умолчанию. Цитата из документации:
- убедитесь, что вы можете запустить
code --helpиз командной строки, и вы получите помощь.
- если вы не видите помогите, пожалуйста, выполните следующие действия:
- Mac: Выберите команда оболочки: установите команду " код " в path от командования Палитра.
- Windows: убедитесь, что вы выбрали добавить в путь в ходе установка.
- Linux: убедитесь, что вы установили код через наш новый .деб или .rpm-пакет.
- из командной строки, выполните команду
git config --global core.editor "code --wait"теперь вы можете запустить
git config --global -eи использовать VS Code в качестве редактора для настройки Git.Добавьте следующее, чтобы включить поддержка использования VS-кода в качестве инструмента diff:
[diff] tool = default-difftool [difftool "default-difftool"] cmd = code --wait --diff $LOCAL $REMOTEэто использует новый
--diffопция, которую вы можете передать в VS Code to сравните два файла рядом.подводя итог, Вот несколько примеров того, где вы можете использовать Git с VS Код:
git rebase HEAD~3 -iпозволяет интерактивную перебазировку с помощью VS Codegit commitпозволяет использовать VS код для сообщения фиксацииgit add -pзатемeдля интерактивного добавитьgit difftool <commit>^ <commit>позволяет использовать VS-код в качестве редактора различий для изменений
насколько я понимаю, VSCode больше не находится в AppData.
поэтому установите редактор git по умолчанию, выполнив эту команду в окне командной строки:
git config --global core.editor "'C:\Program Files (x86)\Microsoft VS Code\code.exe' -w"параметр
-w,--waitэто ждать, пока окно будет закрыто перед возвращением. Код Visual Studio основан на Редакторе Atom. если у вас также установлен atom, выполните командуatom --help. Вы увидите, что последний аргумент в справке-это ожидание.в следующий раз вы делаете
git rebase -i HEAD~3он будет всплывать Код Visual Studio. После VSCode близка, то git будет взять обратно лидерство.Примечание: моя текущая версия VSCode-0.9.2
Я надеюсь, что поможет.
вы должны использовать команду:
git config --global core.editor "'C:\Program Files\Microsoft VS Code\code.exe' -n -w"убедитесь, что вы можете начать свой редактор с Git Bash
Если вы хотите использовать код.exe с короткого пути, вы можете сделать это, добавив следующую строку в ваш .файл:
alias vscode="C:/Program\ Files/Microsoft\ VS\ Code/Code.exe"и теперь, вы можете назвать это, используя только
vscodeкоманда (или как вы ее назвали)дополнительные сведения:
программа установки добавит код Visual Studio в ваш %Путь%, так что из консоль вы можете ввести "код", чтобы открыть VS Code on эта папка. Вам нужно будет перезагрузить консоль после установка для изменения переменной среды %PATH% to вступить в силу.
Я открыл свой
.gitconfigи поправил его:[core] editor = 'C:/Users/miqid/AppData/Local/Code/app-0.1.0/Code.exe'Это сделало это для меня (я на Windows 8).
однако я заметил, что после того, как я попробовал произвольный
git commitчто в моем Git Bash
GitPad устанавливает текущий текстовый редактор в качестве редактора по умолчанию для Git.
мой редактор по умолчанию для
.txtфайлы в Windows 10-это код Visual Studio, и запуск GitPad однажды сделал его редактором по умолчанию для Git. Я не испытывал проблем, упомянутых в вопросе (Git ждет, пока окно VS Code не будет закрыто в моем случае).(ссылка на
.exeфайл не работает для меня, возможно, вам придется скомпилировать источник самостоятельно.)
хорошая новость! На момент написания статьи эта функция уже была реализована в 0.10.12-инсайдеры выпуск и осуществляется через 0.10.14-инсайдеры. Следовательно, мы будем иметь его в предстоящей версии 1.0 релиз VS Code.
Реализация Ref:Implement-w / --wait command line arg
Я не уверен, что вы можете сделать это, однако вы можете попробовать эти дополнения в вашем файле gitconfig.
попробуйте заменить kdiff3 из этих значений, чтобы указать на исполняемый код visual studio.
[merge] tool = kdiff3 [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe keepBackup = false trustExitCode = false
Я настроил код Visual Studio по умолчанию для открытия .txt-файл. И затем я использовал простую команду:
git config --global core.editor "'C:\Users\UserName\AppData\Local\Code\app-0.7.10\Code.exe\'". И все работает довольно хорошо.
выполните эту команду в приложении терминала Mac
git config --global core.editor "/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code"
в windows 10 с помощью 64-битной версии insiders команда должна быть:
git config --global core.редактор "'C:\Program файлы\Microsoft VS Code Insiders\bin\code-инсайдеры.cmd'"
вы также можете переименовать ' code-insiders.cmd 'to' код.cmd 'в каталоге' Program Files', таким образом, теперь вы можете использовать код команды '. чтобы начать редактирование файлов на . каталог

Comments