# git config

## Початкове налаштуваня

Початкове налаштуваня вашого Git середовища. Це потрібно виконати лише один раз - налаштування залишаються між оновленнями. Ви також можете змінити їх у будь-який час, знову виконавши декілька команд.

До Git входить утиліта що має назву `git config`, яка дозволяє отримати чи встановити параметри, що контролюють усіма аспектами того, як Git виглядає чи працює. Ці параметри можуть бути збережені в трьох різних місцях:

1. Файл **/etc/gitconfig** містить значення для кожного користувача в системі і всіх їхніх репозиторіїв. Якщо ви передаєте опцію `--system` при виконанні `git config`, параметри читаються та пишуться з цього файлу. (Це системний файл конфігурації, відповідно, вам потрібен був доступ адміністратора чи суперкористувача, щоб змінювати його.)
2. Файл **\~/.gitconfig** або **\~/.config/git/confi**`g` зберігає значення саме для вас — користувача. Ви можете налаштувати Git читати і писати в цей файл, вказуючи опцію `--global.`
3. Файл `config` у каталозі `.git` (тобто **.git/config**) у тому репозиторії, який ви використовуєте в даний момент, зберігає налаштування конкретного репозиторія.

Кожен рівень має пріоритет над налаштуваннями в попередньому рівні, тобто параметри в **.git/config** перевизначають параметри в **/etc/gitconfig**.

### Ім’я користувача та електронна пошта

Встановити ім’я користувача та адресу електронної пошти. Кожен коміт в Git використовує цю інформацію, і вона незмінно включена у комміти, які ви робите:

```console
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
```

Знову ж таки, якщо ви передаєте опцію `--global`, ці налаштування потрібно зробити тільки один раз, тоді Git завжди буде використовувати цю інформацію для всього, що ви робите у цій системі. Якщо ви хочете, перевизначити ім’я або адресу електронної пошти для конкретних проектів, ви можете виконати цю ж команду без опції `--global` в каталозі необхідного проекту.

Багато з графічних інструментів допомагають зробити це при першому запуску.

## Перевірка налаштувань <a href="#perevirka_nalashtuvan" id="perevirka_nalashtuvan"></a>

Якщо ви хочете подивитися на свої налаштування, можете скористатися командою `git config --list`, щоб переглянути всі налаштування, які Git може знайти:

```console
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
alias.hist=log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short
init.defaultbranch=main
core.filemode=false
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=git@github.com:johndoe/repo.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.main.remote=origin
branch.main.merge=refs/heads/main

...
```

Ви можете побачити ключі більш ніж один раз, тому що Git читає однакові ключі з різних файлів (наприклад `/etc/gitconfig` або `~/.gitconfig`). У цьому випадку, Git використовує останнє значення для кожного ключа.

Ви також можете перевірити значення конкретного ключа виконавши `git config <key>`:

```console
$ git config user.name
John Doe
```

або

```
$ git config --get core.filemode
true
```

## .git/config опції

{% embed url="<https://git-scm.com/docs/git-config>" %}

###


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://olexsyn.gitbook.io/enote/dev/git/git-config.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
