Битбакет разделяет git ревизии
После нажатия на битбакет мои комлекты коммиты удаляются, и появляется сообщение о подаче новостей в битбакете
stripped 6f9de58aa748 from projektA
4 hours ago
stripped 54dae89de600 from projektA
4 hours ago
stripped e04022989a9d from projektA
...
Как я могу спасти коммиты?
Действительно ли Git система управления версиями, которая позволяет удалять коммиты?
Это связано с --force?
Ответы
Ответ 1
Как я могу спасти коммиты?
К сожалению, вы ничего не можете сделать на своем сайте, чтобы вернуть эти данные (details). Вам нужно связаться с командой обслуживания BB, так как только они могут восстановить эти коммиты.
Является ли Git действительно системой управления версиями, которая позволяет удалять коммиты?
Когда вы его настроите. Вы должны установить receive.denyNonFastForwards
в true
, чтобы отключить это поведение в репозитории на сервере (который является значением по умолчанию, когда git init
был запущен с параметром --shared
, но в противном случае это false).
Это из-за -force?
Да, используя параметр force на git push
делает серверную сторону Git отключать проверку безопасности, если ваша новая ветвь ветки выбрасывает другие коммиты, а receive.denyNonFastForwards
- false.
Ответ 2
В случае, если кто-либо еще найдет эту нить, ищущую отчаянно, для "битбакетных разделов", как я был:
Мне удалось восстановить локальную локацию, следуя этим инструкциям.
Затем я снова подтолкнул битбакет, и зачищенные коммиты были восстановлены.
Ответ 3
Мы также столкнулись с этим в последнее время. Должен сказать, довольно раздражающе. Но в нашем случае снятые коммиты были восстановлены сразу же после того, как исходный пользователь снова нажал. Другая вещь, которую мы сделали, чтобы избежать этого снова, заключалась в том, чтобы отключить "Историю Re-write" на рассматриваемой отрасли.
Надеюсь, что это поможет кому-то, кому это грозит в будущем!