====== Git. Установка и настройка ======
----
===== Установка =====
==== CentOS / RedHat / Fedora: ====
yum install git-core
==== Debian / Ubuntu: ====
apt-get install git
==== Установка из исходников: ====
* Ставим необходимые библиотеки:
# CentOS / RedHat / Fedora:
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# Debian / Ubuntu:
apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev
* Загружаем исходники с [[http://git-scm.com/download|git-scm.com]]
* Компилируем и инсталлируем:
tar -zxf git-1.7.2.2.tar.gz
cd git-1.7.2.2
make prefix=/usr/local all
sudo make prefix=/usr/local install
* Обновляемся:
git clone git://git.kernel.org/pub/scm/git/git.git
----
===== Настройка =====
^ Конфигурационный файл ^ Описание ^
| **%%/etc/gitconfig%%** | Содержит значения, общие для всех пользователей системы и для всех их репозиториев. Если при запуске **git config** указать параметр **%%--system%%**, то параметры будут читаться и сохраняться именно в этот файл. |
| **%%~/.gitconfig%%** \\ //или// \\ **%%~/.config/git/config%%** | Xранит настройки конкретного пользователя. Этот файл используется при указании параметра **%%--global%%** |
| **%%.git/config%%** | Конфигурационный файл в каталоге Git'а в том репозитории, где вы находитесь в данный момент. Эти параметры действуют только для данного конкретного репозитория. Настройки на каждом следующем уровне подменяют настройки из предыдущих уровней, то есть значения в **.git/config** перекрывают соответствующие значения в **%%/etc/gitconfig%%**. |
==== Имя пользователя и почтовый ящик ====
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com
==== Выбор редактора ====
git config --global core.editor vim # Vim
git config --global core.editor emacs # Emacs
git config --global core.editor nano # Nano
==== Утилита сравнения ====
git config --global merge.tool vimdiff
==== Алиасы ====
=== Поддержка цветов ===
git config --global color.branch auto
git config --global color.diff auto
git config --global color.interactive auto
git config --global color.status auto
=== Псевдонимы для команд Git ===
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
git config --global alias.type cat-file -t
git config --global alias.dump cat-file -p
==== Проверка настроек ====
git config --list # Всех (глобальных, системных и локальных)
git config --local --list # Локальных для определенного проекта
git config --system --list # Системных
----
===== Источник =====
* [[https://git-scm.com/book/ru/v2| Pro Git (2nd Edition 2014 Rus)]]