Базовая настройка git
Базовая настройка git.
Содержание
1 Первичная настройка параметров git
- Зададим имя и email владельца репозитория:
git config --global user.name "Name Surname" git config --global user.email "work@mail"
- Настроим utf-8 в выводе сообщений git:
git config --global core.quotepath false
- Настройте верификацию и подписание коммитов git (см. Подпись коммитов git).
- Зададим имя начальной ветки (будем называть её
master
):git config --global init.defaultBranch master
- Зададим опцию для автоматического задания удалённой ветки:
git config --global push.autoSetupRemote true
2 Учёт переносов строк
- В разных операционных системах приняты разные символы для перевода строк:
- Windows:
\r\n
(CR
иLF
); - Unix:
\n
(LF
); - Mac:
\r
(CR
).
- Windows:
- Посмотреть значения переносов строк в репозитории можно командой:
git ls-files --eol
2.1 Параметр autocrlf
Настройка
core.autocrlf
предназначена для того, чтобы в главном репозитории все переводы строк текстовых файлах были одинаковы.Настройка
core.autocrlf
с параметрамиtrue
иinput
делает все переводы строк текстовых файлов в главном репозитории одинаковыми.core.autocrlf true
: конвертацияCRLF->LF
при коммите и обратноLF->CRLF
при выгрузке кода из репозитория на файловую систему (обычно используется в Windows).core.autocrlf input
: конвертацияCRLF->LF
только при коммитах (используются в MacOS/Linux).
Варианты конвертации
core.autocrlf false input true git commit LF -> LF LF -> LF LF -> CRLF CR -> CR CR -> CR CR -> CR CRLF -> CRLF CRLF -> LF CRLF -> CRLF git checkout LF -> LF LF -> LF LF -> CRLF CR -> CR CR -> CR CR -> CR CRLF -> CRLF CRLF -> CRLF CRLF -> CRLF Установка параметра:
- Для Windows
git config --global core.autocrlf true
- Для Linux
git config --global core.autocrlf input
- Для Windows
2.2 Параметр safecrlf
- Настройка
core.safecrlf
предназначена для проверки, является ли окончаний строк обратимым для текущей настройкиcore.autocrlf
.core.safecrlf true
: запрещается необратимое преобразованиеlf<->crlf
. Полезно, когда существуют бинарные файлы, похожие на текстовые файлы.core.safecrlf warn
: печать предупреждения, но коммиты с необратимым переходом принимаются.
- Установка параметра:
git config --global core.safecrlf warn