This is an in-progress translation.
To help translate the book, please fork the book at GitHub and push your contributions.

Полезные советы

Перед тем как закончить данную главу об основах Git’а, дадим несколько полезных советов о том, как сделать ваш опыт работы с Git’ом проще, удобнее или привычнее. Многие люди используют Git, не прибегая к этим советам, и мы дальше в книге не будем ссылаться на них или подразумевать, что вы ими пользуетесь, но вам всё же стоит знать о них.

Автоматическое дополнение

Если вы используете командную оболочку Bash, Git поставляется с замечательным сценарием (script), который вы можете активировать. Скачайте исходный код Git’а и посмотрите в каталоге contrib/completion; там должен быть файл git-completion.bash. Скопируйте этот файл в свой домашний каталог и добавьте следующее в файл .bashrc:

source ~/.git-completion.bash

Если вы хотите настроить автоматическое дополнение в Bash’е для всех пользователей, скопируйте этот сценарий в каталог /opt/local/etc/bash_completion.d на Mac-системах или в каталог /etc/bash_completion.d/ на Linux-системах. Это каталог, из которого Bash автоматически загружает сценарии для автодополнения.

Если вы используете Git Bash на Windows, что является стандартным при установке Git’а на Windows с помощью msysGit, то автодополнение должно быть настроено заранее.

Нажав Tab во время ввода команды для Git’а, вы должны получить набор вариантов на выбор:

$ git co<tab><tab>
commit config

В данном случае, набрав git co и дважды нажав клавишу Tab, вы получите как варианты commit и config. Добавление m<tab> выполнит дополнение до git commit автоматически.

То же самое работает и для опций, что, возможно, полезней. Например, если вы хотите выполнить команду git log и не помните какую-то опцию, вы можете начать её печатать и затем нажать Tab, чтобы увидеть, что подходит:

$ git log --s<tab>
--shortstat  --since=  --src-prefix=  --stat   --summary

Это довольно приятная уловка, которая может сэкономить вам немного рабочего времени от чтения документации.

Псевдонимы в Git

Git не будет пытаться сделать вывод о том, какую команду вы хотели ввести, если вы ввели её неполностью. Если вы не хотите печатать каждую команду для Git’а целиком, вы легко можете настроить псевдонимы (alias) для любой команды с помощью git config. Вот несколько примеров псевдонимов, которые вы, возможно, захотите задать:

$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status

Это означает, что, например, вместо набирания git commit, вам достаточно набрать только git ci. По мере освоения Git’а вам, вероятно, придётся часто пользоваться и другими командами. В этом случае без колебаний создавайте новые псевдонимы.

Такой способ может также быть полезен для создания команд, которые, вы думаете, должны существовать. Например, чтобы исправить неудобство, с которым мы столкнулись при исключении файла из индекса, можно добавить в Git свой собственный псевдоним unstage:

$ git config --global alias.unstage 'reset HEAD --'

Это делает следующие две команды эквивалентными:

$ git unstage fileA
$ git reset HEAD fileA

Так как будто немного понятней. Также обычно добавляют команду last следующим образом:

$ git config --global alias.last 'log -1 HEAD'

Так легко можно просмотреть последний коммит:

$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date:   Tue Aug 26 19:48:51 2008 +0800

    test for current head

    Signed-off-by: Scott Chacon <schacon@example.com>

Можно сказать, что Git просто заменяет эти новые команды на то, для чего вы создавали псевдоним (alias). Однако, возможно, вы захотите выполнять внешнюю команду, а не подкоманду Git’а. В этом случае, следует начать команду с символа !. Такое полезно, если вы пишите свои утилиты для работы с Git-репозиторием. Продемонстрируем этот случай на примере создания псевдонима git visual для запуска gitk:

$ git config --global alias.visual '!gitk'