> For the complete documentation index, see [llms.txt](https://olexsyn.gitbook.io/enote/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://olexsyn.gitbook.io/enote/dev/git/git-config/core.sharedrepository.md).

# core.sharedRepository

Опція налаштувань Git `core.sharedRepository` визначає рівень спільного доступу до репозиторію між різними користувачами на системі. Це може бути важливим, коли репозиторій зберігається на сервері та кілька користувачів взаємодіють з ним.

Є кілька можливих значень для `core.sharedRepository`:

1. `umask` (за замовчуванням): Git використовує значення umask, щоб визначити права доступу до нових файлів та каталогів, створених в репозиторії. Це стандартне значення та враховує налаштування umask для кожного користувача.

   ```bash
   git config --global core.sharedRepository umask
   ```
2. `group`: Git встановлює групові права доступу для нових файлів і каталогів в репозиторії так, щоб група, до якої належить власник репозиторію, мала доступ до них.

   ```bash
   git config --global core.sharedRepository group
   ```
3. `all`: Git встановлює права доступу так, щоб всі користувачі на системі мали доступ до нових файлів і каталогів в репозиторії. Це може бути корисним, коли всі користувачі мають однаковий рівень доступу.

   ```bash
   git config --global core.sharedRepository all
   ```

Це налаштування корисне при спільному використанні репозиторію, оскільки визначає, які права доступу отримають нові файли та каталоги, створені в репозиторії, і як вони будуть доступні іншим користувачам на системі.

Коли *group* ( або *true*), сховище стає роздільним між кілька користувачів у групі (, переконуючись у всіх файлах та об'єктах груповий ). Коли *all* (або *world* або *everybody*) сховище буде читабельним для всіх користувачів, крім того, що вони є груповий-подільний. Коли *umask* (або *false*), Git використовуватиме дозволи повідомляється umask (2). Коли *0xxx*, де *0xxx* - восьмеричне число, файли у сховищі матимуть це значення режиму. *0xxx* буде перекручено значення умаска користувача (тоді як інші параметри будуть лише перекриватися запитували частини значення умаска користувача). Приклади: *0660* зробить репортаж для читання / запису для власника та групи, але недоступний для інші (еквівалентні *group* якщо тільки *umask* не є, наприклад. *0022*). *0640* є сховище, яке читається групово, але не є груповим. Див [git-init \[1\]](https://git-scm.com/docs/git-init). *false* за замовчуванням.

## Дивись також

{% embed url="<https://linuxaria.com/pills/how-to-clone-and-share-a-git-repository-over-ssh>" %}

{% content-ref url="/pages/a2iGZBvHmos2BvcVTbJE" %}
[umask](/enote/linux/commands/umask.md)
{% endcontent-ref %}
