Алиасы для комфортной работы с Git

VCS Git

Думаю, я не типичный пользователь Git. Командную строку и GUI использую одинаково часто. В SourceTree мне удобнее смотреть изменения и ветки, в TortoiseGit — смотреть историю и мёржить, а в консоли — иногда коммитить и делать более сложные операции.

Почему я использую консоль? Есть две причины:

  1. GUI умеет не всё.
  2. В Git есть алиасы…

Алиас — возможность написать в консоли после git свою команду. Пишешь в Git Bash git cp, а выполняется три команды:

  1. git add -A — добавляет новые файлы в индекс.
  2. git commit — делает коммит с комментарием, который я ввожу в Notepad++.
  3. git push -u origin HEAD — пушит текущую ветку на сервер.

Для других сценариев коммита пишутся другие алиасы — когда комментарий вводится сразу в консоли и т.п.

Настройка

Открываешь в редакторе файл .gitconfig. Удобнее это делать в глобальном .gitconfig. Для Windows он находится в корне профиля пользователя. Добавляешь в раздел [alias] команды такого вида:

# shows all origin branches origin = remote show origin

Если хочется выполнить несколько команд, пишешь так:

# commit with specified message like: "Test message" (double quotes). com = !git add -A && git commit -m

В статье GitHub Flow Like a Pro with these 13 Git Aliases про всё это написано подробнее. Алиасы, которыми иногда пользуюсь, я выложил в gist.

Преимущества

Конечно, алиасы можно заменить командными файлами (bat, cmd, sh). Но алиасы дают преимущество, которое я прочувствовал после нескольких месяцев использования. Алиасы собраны в одном файле. Поэтому некоторые команды можно не запоминать — заглядываешь в этот файл и быстро находишь.

VCS Git