Skip to end of metadata
Go to start of metadata

Базовые настройки

Настройка git

Настраивать git стоит через утилиту git config хотя все настройки хранятся в обычных текстовых файлах, при необходимости их можно изменять вручную.

Пользоваться этой утилитой просто, например для того, чтобы вывести нужную настройку используется такой синтаксис

git config user.name # user.name - название конфигурационной переменной

Для установки конфигурационной переменной используется такой синтаксис

git config user.name "Foo Bar" # параметры, содержащие пробельные символы следует обрамлять в кавычки (двойные либо одинарные)

Также можно вывести все установленные настройки

git config -l

Конфигурационные файлы

Существуют три варианта расположения конфигурационных файлов git (каждый последующий файл настроек имеет более высокий приоритет, то есть если во всех трех файлах будет указана одна и та же опция, то использоваться будет последняя):

  1. Системный конфигурационный файл - содержит настройки применимые ко всем пользователям и репозиториям системы. Для Linux это /etc/gitconfig, для Windows это %GIT_BASH_INSTALL_DIR%/etc/gitconfig (%GIT_BASH_INSTALL_DIR% - это каталог, который вы выбрали при установке GitBash) - этот файл мы менять не будем, просто желательно знать о его существовании.
  2. Пользовательский конфигурационный файл - содержит настройки применимые к конкретному пользователю, все часто используемые настройки (об этом ниже) следует хранить здесь. Файл настроек находится в домашнем каталоге пользователя ~/.gitconfig (для Windows этот каталог можно узнать выполнив команду echo $HOME в терминале GitBash).
  3. Уровень репозитория - самый приоритетный из всех, здесь стоит хранить настройки специфичные для конкретного репозитория, находится этот файл в каталоге репозитория .git/config.

Чтение и запись настроек
Для установки и чтения настроек в конфигурационные файлы разных уровней, используется дополнительный параметр, ниже приведены примеры использования

git config --system user.name # читает переменную из системного конфигурационного файла
git config --global user.name "Foo Bar" # записывает переменную в пользовательский конфигурационный файл
git config user.name "Foo Bar" # записывает переменную в конфигурационный файл репозитория
git config --system -l # выводит настройки установленные в системном конфигурационном файле

Отмечу, что при чтении конфигурационной переменной без указания --system или --global - она может быть считана из любого уровня, например если мы находимся в директории репозитория и переменная установлена на этом уровне, то будет считана именно она, если же не установлена, то будет считана либо из пользовательского, либо из системного уровня (учитывая приоритет).

Удаление настроек

Чтобы удалить настройку, нужно использовать дополнительный параметр --unset

git config --unset user.name

При удалении переменной, также можно указывать из какого конфигурационного файла нужно ее удалить

git config --global --unset user.name # удаляет переменную user.name на пользовательском уровне

Основные настройки

В первую очередь стоит указать ваше имя и email, в дальнейшем каждый коммит будет содержать эти данные (устанавливать эти параметры лучше на пользовательском уровне, для того, чтобы они были доступны для всех ваших репозиториев).

git config --global user.name "Foo Bar"

git config --global user.email "your_email@your_domain.org"

На данный момент больше ничего настраивать не будем, в дальнейшем, если вы не будете пользоваться IDE либо графическим приложением для работы с git, есть смысл установить различные сокращения git команд и прочее.