Тур по Git
Продвинутый Git / Урок 5.7

Git-псевдонимы и конфигурация

Git-псевдонимы позволяют создавать пользовательские сокращения для часто используемых команд. Вместо того чтобы каждый раз набирать git status, вы можете набрать git st.

Создание псевдонимов

Используйте git config для определения псевдонимов:

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

Теперь git st — это то же самое, что git status.

Псевдонимы для сложных команд

Псевдонимы могут оборачивать более длинные команды:

# Красивый лог с графом
git config --global alias.lg "log --oneline --graph --all --decorate"

# Показать последний коммит
git config --global alias.last "log -1 HEAD"

# Снять файл с подготовки
git config --global alias.unstage "reset HEAD --"

# Дополнить коммит без изменения сообщения
git config --global alias.amend "commit --amend --no-edit"

# Показать ветки, отсортированные по последнему коммиту
git config --global alias.recent "branch --sort=-committerdate"

Где хранятся псевдонимы

Псевдонимы хранятся в вашем файле конфигурации Git:

git config --global --list    # показать все глобальные настройки
git config --local --list     # показать настройки конкретного репозитория

Глобальная конфигурация находится в ~/.gitconfig:

[alias]
    st = status
    co = checkout
    br = branch
    ci = commit
    lg = log --oneline --graph --all --decorate

Попробуйте!

Настройте несколько полезных псевдонимов:

  1. Инициализируйте репозиторий: git init && echo "hello" > file.txt && git add file.txt && git commit -m "Init"
  2. Создайте псевдоним для status: git config alias.st status
  3. Протестируйте его: git st
  4. Создайте псевдоним для лога: git config alias.lg "log --oneline --graph --all --decorate"
  5. Добавьте ещё коммитов: echo "update" >> file.txt && git add file.txt && git commit -m "Update file"
  6. Протестируйте псевдоним лога: git lg
  7. Создайте псевдоним для снятия с подготовки: git config alias.unstage "reset HEAD --"
  8. Подготовьте изменение и снимите его: echo "test" >> file.txt && git add file.txt && git unstage file.txt && git st

Shell-псевдонимы и Git-псевдонимы

Вы также можете создать shell-псевдонимы для ещё более коротких команд:

# В ~/.bashrc или ~/.zshrc
alias g="git"
alias gs="git status"
alias gc="git commit"
alias gp="git push"

С обоими gs становится двухсимвольным git status.

Полезные настройки конфигурации

Помимо псевдонимов, эти параметры конфигурации улучшают ваш повседневный рабочий процесс:

# Установить имя ветки по умолчанию
git config --global init.defaultBranch main

# Включить цветной вывод
git config --global color.ui auto

# Установить редактор
git config --global core.editor "code --wait"

# Автоисправление опечаток (с задержкой 1,5 сек)
git config --global help.autocorrect 15

# Повторное использование записанных разрешений конфликтов
git config --global rerere.enabled true

Проверка конфигурации

git config --list --show-origin   # показать все настройки и откуда они взяты
git config alias.st               # показать конкретную настройку
🎯

Цель

Создайте git-псевдоним 'st' для команды 'status'

Terminal
$

No commits yet. Run `git init` and create your first commit.