Sobes.tech
Junior

Je hebt ontdekt dat er in de geschiedenis van de hoofd-Git-repository commits aanwezig zijn die kritieke vertrouwelijke gegevens bevatten. Deze gegevens moeten volledig uit de hele geschiedenis van de repository worden verwijderd. Evalueer hoe correct en veilig het zou zijn om de volgende strategie te gebruiken: een nieuwe commit maken die de vertrouwelijke gegevens uit de huidige versie van de bestanden verwijdert en deze naar main te pushen. - Correct, maar niet optimaal. Het is beter om git revert te gebruiken om commits ongedaan te maken - Conditieel correct. Dit is een tijdelijke oplossing totdat een meer radicale methode om de gegevens te verwijderen wordt gevonden - Onjuist en onveilig. De gegevens worden verwijderd uit de huidige versie, maar blijven toegankelijk in de geschiedenis van de repository - Onjuist. Deze commit kan leiden tot nieuwe conflicten bij het samenvoegen met andere branches - Correct en veilig. Deze methode garandeert dat de gegevens worden verwijderd en niet meer in de repository verschijnen

sobes.tech AI

Antwoord van AI

Неправильно и небезопасно. Создание нового коммита, который удалит конфиденциальные данные из текущей версии файлов, не удалит эти данные из истории репозитория — они останутся доступны в предыдущих коммитах. Чтобы полностью удалить конфиденциальные данные из всей истории, нужно использовать инструменты для переписывания истории, например, git filter-branch, git rebase или git filter-repo. После этого потребуется форсированная отправка (git push --force) и уведомление всех участников, чтобы они обновили свои локальные копии. Простое добавление коммита с удалением данных не решит проблему безопасности.