# 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="../../../linux/commands/umask" %}
[umask](../../../linux/commands/umask)
{% endcontent-ref %}
