Питання Як зробити Gіt використовувати редактор мого вибору для виконання зобов'язань?


Я б вважав за краще писати мої коректні повідомлення в Vim, але відкриває їх у Emacs.

Як налаштувати Git, щоб завжди використовувати Vim? Зауважте, що я хочу зробити це глобально, а не тільки для одного проекту.


1899
2018-04-08 00:28


походження


"Як отримати git, щоб піти в vim для коментарів з git-go?" - Michael Burr
Пов'язані (можливі дублікати): Як налаштувати редактор для роботи з Git у Windows? - Steven Vascellaro


Відповіді:


Якщо ви хочете встановити редактор тільки для Гіта, будь то (вам не потрібні обидва):

  • Набір core.editor у вашій конфігурації Git: git config --global core.editor "vim"
  • Встановіть GIT_EDITOR змінна оточення: export GIT_EDITOR=vim

Якщо ви хочете встановити редактор для Git а також інші програми, встановіть стандартизований VISUAL і EDITOR змінні середовища *:

export VISUAL=vim
export EDITOR="$VISUAL"

* Налаштування обох не обов'язково необхідно, але деякі програми можуть не використовувати більш правильні VISUAL. Побачити VISUAL проти EDITOR.


Для піднесеного тексту: Додайте це до .gitconfig. The --wait це важливо. (це дозволяє вводити текст піднесеним і буде чекати збереження / закриття події.

[core]
    editor = 'subl' --wait

'subl' можна замінити на повний шлях виконуваного файлу, але, як правило, доступний при правильному встановленні.


2677
2018-04-08 00:34



Переважна змінна середовища EDITOR має перевагу в тому, що ряд інших програм це також буде поважати. - Boojum
Зауважте, що git config --global буде писати на ваш персональний (для користувача) файл конфігурації git. На Уніці це ~/.gitconfig. Таким чином, це буде налаштовано для всіх ваших сховищ. - Jakub Narębski
Ви можете перевірити, чи успішно його змінили, намагаючись внести зміни до останнього повідомлення. git commit --amend - Marco M.
Якщо ви робите варіант № 1 у Windows і маєте пробіли на шляху до редактора (скажімо, якщо він знаходиться під пунктом "Програми"), то подивіться на одну цитату у ваших подвійних лапках. наприклад, "C: / Program Files (x86) /Whatever/App.exe" - очевидно для деяких, але це було не для мене! - Pablissimo
@ Абрамоддж -w не потрібен; -w {scriptout} зберігає всі символи, які ви вводите під час редагування для повторного відтворення пізніше. Можливо, ви з цим заплутали -f, котрий є необхідно викликати версію GUI Vim. Тобто, якщо ви використовуєте mvim, тоді вказаний вами редактор повинен бути mvim -f а не mvim. - Rory O'Kane


Скопіюйте, вставте це:

git config --global core.editor "vim"

Якщо ви хочете знати, що ви робите. Від man git-commit:

ЕКОЛОГІЧНІ ТА КОНФІГУРАЦІЙНІ ЗМІНИ

Редактор, який використовував для редагування повідомлення журналу, буде вибрано з GIT_EDITOR змінна оточення, core.editor змінна конфігурації, VISUAL змінної середовища або EDITOR змінна оточення (в такому порядку).


461
2018-04-08 00:31



До речі, вищесказане це стосується CVS та SVN, і я думаю, інші елементи управління версією. - armandino
@армандін: Так, інші можуть використовувати VISUAL або EDITOR, але вони звичайно не використовують GIT_EDITOR або core.editor. - Mark Rushakoff
Так - svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.2 Тому в теорії, якщо я використовую обидва svn і git, налаштування $ VISUAL або $ EDITOR буде найкращим рішенням для обидва за замовчуванням! - brasskazoo
Для повноти, core.editor означає [core] editor = ... у файлі - JRG
Не відповідала на питання "Як налаштувати гіт ..." - Ant6n


На Ubuntu, а також на Debian (спасибі @MichielB) змінити редактор за замовчуванням також можливо запустивши:

sudo update-alternatives --config editor

Що буде підказувати наступне:

There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press enter to keep the current choice[*], or type selection number: 

144
2017-10-27 15:35



У Debian це також працює, дякую! Це за замовчуванням для pico-argh. - MichielB
Не на арку? : [ - dylnmc
Звичайно, він працює на Debian; це функція Debian, яка, як і більшість речей (ой, суперечлива!), Ubuntu просто успадковує. Debian's alternatives Система є набагато простішим способом управління типовими параметрами програм. Для довідки: debian-administration.org/article/91/... - underscore_d
Це працює, в той час як GIT_EDITOR і EDITOR не працюй --ubuntu - Ninja
Немає варіантів для Emacs? Якщо правда, то яка ганьба! - haziz


У Windows 7 при додаванні редактора "Sublime" він все ще давав мені помилку:

Скасування вчинення через порожнє повідомлення про порушення.

Піднесений не зміг зберегти фокус.

Щоб це виправити, я відкрив файл .gitconfig у папці c: / users / username / folder та додав наступну лінію з опцією --wait за межами подвійних лапок.

[core]
      editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait

Сподіваюся, що це корисно для тих, хто має подібний випадок з Sublime.


53
2018-02-21 17:15



Приємно! Спасибі Анмолу, у мене виникла ця проблема, коли вона виконувала порожнє повідомлення. - sircapsalot
Чому б ви хотіли використовувати піднесений для гіт робить? - Adam F
Будь-який редактор для git commit буде використаний переважно для додавання декількох рядків коментарів, і Sublime - це вибір програміста з різних причин для багатьох розробників. Люди, як правило, мають тенденцію використовувати один редактор для більшості своїх кодування та інших творів. Піднесений - це лише особистий вибір, він може бути будь-яким редактором. - Anmol Saraf
Просто з'ясувалося, що єдині лапки "обов'язкові. Це не працює з подвійними лапками ". - dotnetCarpenter
Замість редагування gitconfig вручну ви можете скористатися цією командою git config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait" - KayakinKoder


У Windows 7 встановіть редактор на Notepad ++

  • Відкрийте будь-який текстовий редактор.
  • Відкрийте цей файл: C:\Users\YOUR_USERNAME\.gitconfig
  • Додайте цей розділ знизу:

[core]
    editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' 
  • Зберегти та закрити файл.
  • Коли ви робите з GIT, просто напишіть git commit і натисніть Enter. Буде відкритий блокнот Notepad ++.
  • Напишіть ваше повідомлення про помилку у верхній частині файлу та збережіть і закрийте файл. Готово!

47
2018-03-07 00:08



нарешті, хтось, хто вміє писати це просто! Дякую. Але слід зазначити, що на шляху до блокноту слід використовувати "/" або подвійну зворотну косу риску '\\', в іншому випадку git буде скаржитися ... - icl7126
Вам, можливо, доведеться додати щонайменше -multiInst як параметр для notepad ++ і можливо -notabbar. Зробіть це, якщо git, здається, не знаєш, коли ви закінчите редагування файлу, і він взагалі чекає назавжди. - ErikE
Просто те, що я хотів. Контраст використання \ і / - Henry
щоб встановити конфігурацію у командному рядку, мені потрібні подвійні лапки всередині одиночних лапок, як-от >git config --global core.editor '"C:/Program Files (x86)/Notepad++/notepad++.exe"' - Josef
Щоб додати параметри Notepadd ++, мені довелося це зробити: editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar - тобто, параметри за межами роздільних одиночних лапок - cropredy


І якщо ви працюєте з дизайнерами за допомогою командного рядка, то Pico, і не знаєте коротких скорочень;)

git config --global core.editor "pico"

Or

export VISUAL=pico
export EDITOR=pico

21
2018-06-27 13:56





Встановлення Sublime Text 2 як редактора повідомлень Git у Mac OSX 10

Запустіть цю команду:

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

Або просто:

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

15
2018-03-01 01:19



Я впевнений, що піднесений має виконавчий файл, подібний textmate mate.. - code ninja
Як-небудь це не доставляє текст до гіт. Я отримав "Скасовує виконання через повідомлення про порожнє повідомлення". помилка - mahe madhi
Я використав першу команду для налаштування SL. cmd + S, а потім cmd + W, щоб закрити редактор - mahe madhi
Код Visual Studio також підтримує -w параметр Напр. $ git config --global core.editor "code -w". Приємний матеріал - Automatico
Альтернативна відповідь тут: stackoverflow.com/a/48212377/4561887, з прикладом Linux. - Gabriel Staples


Щоб зробити Visual Studio Code (vscode) вашим редактором за замовчуванням

git config --global core.editor "code --wait"

15
2018-06-28 20:42





Atom як ваш редактор GIT

git config --global core.editor "atom --wait"

Atom потрібно настроїти для запуску з командного рядка вище, щоб працювати:

OS X: встановлення команд оболонки з Atom: панель меню> Atom>   Встановити команди командного рядка

Windows: ніяких дій не потрібно - атома налаштовано для запуску з командного рядка за замовчуванням


13
2017-07-13 17:43





Для користувачів emacs

.emacs:

(server-start)

shellrc:

export EDITOR=emacsclient

9
2018-04-08 00:42



Ось як встановити emacs в режимі терміналу під час коментування git config --global core.editor "emacs -nw" - kukinsula
Перевірити магіт перший. - boris


Windows: встановлення блокноту як редактора повідомлень за замовчуванням

git config --global core.editor notepad.exe

Хіт Ctrl+S зберегти ваше повідомлення про помилку. Щоб відмовитися, просто закрийте вікно блокнот, не зберігаючи його.

Якщо ви натиснете ярлик на збереження, тоді вирішите перервати його, перейдіть у меню Файл-> Зберегти як, а в діалоговому вікні, що відкриється, змініть «Зберегти як тип» на «Всі файли (*. *)». Ви побачите файл "COMMIT_EDITMSG". Видаліть його та закрийте вікно блокнот.

Редагувати: Крім того, і легше, видаліть весь вміст з відкритого вікна блокноту та натисніть "Зберегти". (Дякую mwfearnley за коментар!)

Я думаю, що для маленьких написаних таких робіт, як commit messages, блокнота служить кращим, адже це просто, є там з вікнами, не відкривається в найкоротші терміни. Навіть ваш піднесений може зайняти секунду або два, щоб звільнитись, коли у вас є завантаження плагінів і інше.


9
2018-04-13 03:14



Замість того, щоб перейти до Файл-> Зберегти як, ви можете залишити файл (або коментувати будь-які непорожні рядки), а потім Git буде перервано через порожнє повідомлення про коректне виконання. - mwfearnley
нові рядки відсутні в блокноті ... - Stepan Yakovenko
@Stepan Ви вносите зміни у копію Якщо це так, то я гадаю, що це має відношення \r\n (новий рядок у Windows) і \n (новий рядок в linux, також за замовчуванням для Gіt). - Sнаđошƒаӽ
краще додати рядок, як це core.editor = 'notepad' .git/COMMIT_EDITMSG --wait так що відкривається і зберігається повідомлення редагування за замовчуванням, і вам не потрібно "зберегти як" - Radon8472