Кто-то использовал git push --force
но я не могу сказать, кто это сделал из журналов. Есть ли способ определить виновника?
Как я могу узнать, какая сила нажата в git?
Ответ 1
Обновление от ноября 2018 года: если вы переходите на централизованный хостинг Git-репозитория, такой как GitHub, то вы сможете увидеть, кто принудительно продвинул вашу ветку. Но только потому, что GitHub решил отобразить это событие в своем графическом интерфейсе.
См. Больше в " Найти коммитера принудительного толчка на GitHub ".
Оригинальный ответ 2013:
Как я упоминал в " Распределенных системах контроля версий и предприятии - хороший микс? ", Авторизация или аутентификация с использованием одного Git отсутствует.
Вам нужен слой авторизации, такой как Gitolite, чтобы отслеживать, кто что делает. (Gitolite поставляется с собственным механизмом аудита).
Но если ваше репо доступно через файловый (или локальный) протокол, то вы не можете знать, кто принудительно продвинулся.
(с сайта motivationalgenerator.com и из Википедии)
Ответ 2
GitHub недавно представил изменение 15 ноября 2018 года:
Событие шкалы времени принудительного толчка
Когда вы принудительно нажимаете на ветку, GitHub теперь отображает событие принудительного толчка на временной шкале "Разговор" вашего запроса на извлечение. Нажатие на ссылку "принудительное нажатие" покажет сравнение двух точек между двумя коммитами - Блог GitHub
Ответ 3
Если вам повезло использовать GitHub или GitHub для предприятия, вы можете взглянуть на API REST событий и проверить, кто/когда нажимал/ удалял удаленные ссылки, например, для log4j: