‘git log’ failed with code 128: fatal: unsafe repository

Начиная с версии Git 2.35.2, в котором были исправлены ошибки безопасности — начало появляться сообщение:

«git log» failed with code 128: fatal: unsafe repository. To add an exception for this directory, call: git config —global —add safe.directory

Что предсатавляет собой папаметр safe.directory ?

С помощью данного параметра конфигурации можно указать каталоги, отслеживаемые Git, которые считаются безопасными, даже если они принадлежат кому-то, кроме текущего пользователя. По умолчанию Git отказывается даже анализировать конфигурацию Git репозитория, принадлежащего кому-то другому, и этот параметр конфигурации позволяет пользователям указывать исключения, например. для преднамеренного использования общих репозиториев

Как исправить ошибку git failed with code 128: unsafe repository ?

  • Открыть папку с репозиторием (например: С:\path_to_repo)
  • Запустить git bash
  • Выполнить команду описанную в сообщении:
git config --global --add safe.directory <span style="background-color: inherit; font-size: 0.857143rem; white-space: pre-wrap;">С:\path_to_repo</span>Code language: HTML, XML (xml)

где `С:\path_to_repo` — путь к вашему репозиторию

Как полностью отказаться от проверки безопасности с помощью safe.directory?

Чтобы полностью отказаться от этой проверки безопасности, задайте для safe.directory *. Это позволит обрабатывать все репозитории так, как если бы их каталог был указан в списке safe.directory.

Как включить проверку безопасности с помощью safe.directory?

Если в конфигурации системы установлено значение safe.directory=* и вы хотите снова включить её, инициализируйте свой список пустым значением, прежде чем перечислять репозитории, которые вы считаете безопасными.

PS: Описание опции safe.directory можно почитать git-scm.com (eng)

Добавить комментарий