Как я могу сделать Sublime Text редактором по умолчанию для Git? - PullRequest
203 голосов
/ 21 января 2012

У меня проблема с настройкой Sublime Text 2 в качестве core.editor с git.

. Я прочитал все посты, в которых нашел решение проблемы, но все равно у меня ничего не работает.Я использую Windows.

Я сделал:

git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe'"

и попробовал это с различными аргументами, такими как -m.Когда я открываю свой .gitconfig, вот что там:

[user]
    name = Spencer Moran
    email = smoran02@gmail.com
[core]
    editor = 'C:/Program Files/Sublime Text 2/sublime_text.exe'

Если я иду в Git и набираю:

README.markdown --edit

файл README открывается в Блокноте, а не в SublimeТекст.

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

Ответы [ 15 ]

327 голосов
/ 23 февраля 2012

Windows

Sublime Text 2 (сборка 2181)

Последняя версия Сборка 2181 только что добавила поддержку аргумента командной строки -w (ожидание).Следующая конфигурация позволит ST2 работать в качестве редактора git по умолчанию в Windows.Это позволит git открыть ST2 для сообщений о коммите и т. Д.

git config --global core.editor "'c:/program files/sublime text 2/sublime_text.exe' -w"

Sublime Text 3 (сборка 3065)

Sublime Text 3 (сборка 3065) добавилsubl.exe помощник командной строки.Используйте subl.exe -h для доступных вам опций.Я установил hot_exit: true и remember_open_files: true в моих пользовательских настройках Sublime Text.Я нашел следующее, чтобы git config работал хорошо для меня.

git config --global core.editor "'c:/program files/sublime text 3/subl.exe' -w"

Mac и Linux

Установите Sublime в качестве редактора для Git, введя следующую команду в терминале:

git config --global core.editor "subl -n -w"


С помощью этой конфигурации Git новая вкладка открывается в моем редакторе.Я редактирую свое сообщение о коммите, сохраняю вкладку ( Ctrl + S ) и закрываю ее ( Ctrl + W ).

Git будет ждать закрытия вкладки, чтобы продолжить свою работу.

92 голосов
/ 19 февраля 2012

Вы можете использовать эту команду на Mac и Linux:

git config --global core.editor "subl -n -w"
11 голосов
/ 08 июня 2016

Для Mac OS X в файле ~ / .gitconfig в [core] мне пришлось поместить этот код, чтобы решить проблему с моей стороны.

editor = /Applications/Sublime\\ Text.app/Contents/SharedSupport/bin/subl  -n -w

Это было когда subl работал нормально, но gitне смог получить к нему доступ.И отображал эти ошибки

subl -n -w: subl: command not found
error: There was a problem with the editor 'subl -n -w'.
8 голосов
/ 14 ноября 2017

Для Mac & Sublime Text 3 :

Если git config --global core.editor "subl -n -w" не работает, используйте команду git config:

$ git config --global core.editor "'/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl' -n -w"

Примечание: не содержит экранирование от обратной косой черты.

7 голосов
/ 13 января 2014

что сработало для меня в cygwin / zsh:

в / usr / local / bin создать файл subl_git

#!/bin/bash
/cygdrive/c/Program\ Files/Sublime\ Text\ 2/sublime_text.exe -w -n `cygpath -w $@`

в gitconfig:

editor = /usr/local/bin/subl_git
6 голосов
/ 09 марта 2015

С Sublime Text 2 и следующей конфигурацией, , если при закрытии файла комментария git commit ничего не происходит:

git config --global core.editor "'c:/program files/sublime text 2/sublime_text.exe' -w"

Если коммит git не заканчивается при закрытиифайл комментариев COMMIT_EDITMSG в Sublime, я обнаружил, что это, вероятно, потому, что вы запускаете CMD в режиме администратора (и Sublime Text уже открыт в режиме без прав администратора).У меня была такая же проблема, и она работала для меня, когда я запустил мою CMD в обычном режиме.

Ps: просто хотел ответить на проблему, указанную @davidв комментариях принятого ответа, но я не смог оставить комментарий, так как я здесь новичок ... поэтому я сделал новый ответ, потому что я думаю, что это может быть полезно для некоторых людей, сталкивающихся с проблемой.

5 голосов
/ 28 декабря 2012

Я только что успешно сделал это с помощью PowerShell (инструменты командной строки для Windows, которые также используются в качестве командной строки по умолчанию в GithubforWindows)

Просто создайте папку «WindowsPowerShell» в «C: \ Users \% username% \ My Documents». Затем создайте файл с именем "profile.ps1". Убедитесь, что у вас правильное расширение файла .ps1, а не .txt. внутри profile.ps1 поместите эту строку, чтобы установить команду псевдонима:

Set-Alias subl 'c:\program files\sublime text 2\sublime_text.exe'

Убедитесь, что на вашем компьютере верный каталог. Вы также можете увидеть детали конфигурации в здесь .

Теперь я могу редактировать файлы с помощью Sublime Text 2 с помощью команды PowerShell, просто набрав:

subl filename

Надеюсь, это полезно ...

3 голосов
/ 23 декабря 2014

Сегодня вечером я столкнулся с той же проблемой с git editor в Windows , и, наконец, я понял.

Вам нужно будет указать путь к редактору с помощью синтаксиса bash и использовать формат DOS 8.3, чтобы избежать пробелов :

Это не работает (для меня):

git config --global core.editor "C://Program files/Sublime Text/sublime_text.exe"

Это сделать:

git config --global core.editor /C/PROGRA~1/SUBLIME~1/sublime_text.exe

Вы можете получить имя DOS 8.3 для каталога с помощью dir / x

1 голос
/ 14 февраля 2017

Что ж, у меня возникли проблемы с вызовом notepad ++ из gitbash даже после установки его в качестве core.editor.

Я все решил, добавив следующую строку в мой файл .bashrc в моем каталоге установки gitbash.

alias npp='winpty "C:/Program Files (x86)/Notepad++/notepad++.exe"'

так что я могу вызвать notepad ++ с псевдонимом "npp". Я чувствую, что это может помочь вам, если вы измените каталог на соответствующий редактор, который вы хотите использовать.

1 голос
/ 05 октября 2015

Если вы пользователь Mac, то вот как:

git config --global core.editor '/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl'
...