Текстовый редактор для Git в среде Windows

Git требует, чтобы каждый коммит сопровождался текстовым пояснением. Для краткого пояснения вполне достаточно ключа -m, но назначение коммита не всегда можно описать одним словосочетанием. В этом случае использовать ключ -m неудобно.

Вообще грамотное составление коммитов и комментариев к ним — отдельная тема, которую мы не будем здесь обсуждать. Я хотел прежде всего сосредоточиться на инструментарии. Точнее поделиться своим личным опытом поиска оного в среде Windows.

По умолчанию, при отсутствии ключа -m, Git запускает редактор Vim, или его аналог (речь о Git, входящем в комплект MinGW Distro). Это очень специфический редактор, и разобраться в нём не просто. Поэтому желание заменить его на что-нибудь более дружелюбное — объяснимо. Но на что?

Данный вопрос не нов. В частности его обсуждение можно найти на форуме. Там предлагается множество различных вариантов. Некоторые из них я проверил лично и хочу поделиться своим опытом. Чтобы вам не пришлось повторять мои ошибки.

В Linux для составления описания коммитов я обычно использую GNU Nano. Простой, понятный и без изысков. Он портирован на Windows. Но… Версия 1.0.8 наотрез отказалась работать на моей системе (Windows 10). Более новая версия 2.5.3 нормально запустилась. Но воспринимать кириллический ввод отказалась, выдавая ошибку «Unknown Command».

Этот баг обсуждается здесь. Последнее сообщение гласит: «I have no way to support nano on Windows», или в переводе на русский: «у меня нет возможности поддерживать nano в среде Windows». Так что исправления не ждите. Таким образом: если вы используете исключительно латиницу, GNU Nano вам подойдет (но не ждите новых версий). Если же вы хотите использовать и кириллицу, то не тратьте на него своего времени. Он только для Linux (может быть Mac).

Дальше на очереди Notepad и WordPad. Родные для Windows приложения. Но в этом и их беда. Как показали опыты, они плохо дружат с UTF-8, а именно её использует Git для хранения комментариев. Поэтому также не подходят. Возможно их как-то можно подружить, но я не стал заморачиваться.

Взглянем на Notepad++. Первоначально я использовал portable версию (это было моей ошибкой). Он нормально запускается, поддерживает и кириллицу и UTF-8, но не сохраняет комментарий. То есть вы вводите, сохраняете, закрываете редактор и Git вам выдает, что вы ничего не ввели, поэтому коммит не создан.

Потом я решил попробовать с основной версией. И вот тут всё заработало как часы. Теперь кратко о том, как их подружить с Git. Для этого нужно выполнить команду:

git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"

 

Давайте разберем эту строку:

config — указывает Git, что мы читаем или изменяем его настройку.

ключ global — говорит о том, что настройка меняется для всех репозиториев текущего пользователя

core.editor — сама настройка, задающая команду запуска текстового редактора. Новое значение настройки задается в двойных кавычках после имени настройки. Здесь указывается полный путь к исполняемому файлу редактора (в одинарных кавычках) и дополнительные ключи его запуска. Они пояснены ниже:

-multInst — создать отдельный экземпляр приложения. Это на тот случай, если у вас уже запущен Notepad++.

-notabbar — отключить вкладки. Поскольку мы собираемся работать с одним файлом, они нам не нужны.

-nosession — создать новый сеанс. По умолчанию, Notepad++ открывает те файлы, которые были открыты в нём в момент его закрытия. Здесь нам это не нужно.

-noPlugin — отключить плагины.

Резюме

Таким образом, после длительных поисков я пришел к Notepad++. Это не значит, что он — единственный вариант. Это тот инструмент, который подошел лично мне. Вам же может подойти и другой инструмент. Главное, чтобы он был удобен для вас. Цель этой статьи — предупредить вас о тех подводных камнях, с которыми вы можете столкнуться при поиске текстового редактора для Git.

Один ответ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *