Удалить Git Branch и отключить кнопку восстановления - PullRequest
1 голос
/ 09 мая 2019

После работы над веткой я переместил ветку на GitHub, и позже я понял, что я также выдвинул токен, который не должен быть виден никому. Но теперь, когда файл env находится в GitHub, я удалил ветку оттуда, чтобы никто не мог его увидеть,

Я пытался сделать

  1. git branch -D в моем локальном
  2. Я удалил ветку с сайта GitHub с помощью пользовательского интерфейса

Теперь я хочу, чтобы ветка была удалена навсегда, и никто не может ее восстановить. Могу ли я что-нибудь сделать, чтобы история для этой ветви была удалена, и у нас не должно быть возможности ее восстановить.

1 Ответ

0 голосов
/ 10 мая 2019

Краткий ответ: Как только вы удаляете ветку, которая из удаленного (и не объединена), его коммиты исчезают.Если вы удаляете ветку локально, соответствующие коммиты будут оставаться доступными до следующего цикла git по сбору мусора.

Читайте дальше, если вам не скучно -

Просто чтобыподтвердите, что ветка была удалена с удаленного компьютера, вы можете запустить

git push origin --delete branchName

Это удалит ветку с удаленного компьютера, если она еще не удалена.

Теперь, при условии, что ваша веткане объединяется с какой-либо другой веткой, если вы удалите ветку, связанные коммиты потеряют свой указатель.Коммиты не будут удалены немедленно, но они останутся там без указателя (указатель == ветвь).Эти коммиты называются висячими коммитами.

Итак, коммит, содержащий ваш токен, теперь болтается после удаления связанной ветки.Любой, кто клонирует ваше хранилище, не будет иметь доступа к коммиту, но коммит останется в вашей системе до следующего цикла git по сбору мусора.И будет доступен вам с помощью git reflog.

После запуска git gc он очистит все висячие коммиты, и они больше не будут вам доступны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...