Si vous avez commité votre clé privée dans un repo, il existe un moyen de la dégommer de l’historique.
ATTENTION, CECI EST UNE OPERATION DANGEREUSE.
git filter-branch -f --index-filter "git rm -r --cached --ignore-unmatch chemin/vers/fichier" --prune-empty --tag-name-filter cat -- --all |
Si le fichier a été dans plusieurs endroits durant sa vie, il faut relancer la commande pour chaque chemin.
Puis :
git push remote branch --force |
Cette seconde commande est à lancer pour chaque branche et chaque tag concerné.
Comme tout ce qui change l’historique, il faut que tous les autres repos appliquent aussi cette opération.
Tous vos collègues devront, soit appliquer eux aussi “filter-branch”, soit faire un rebase de toutes les branches basées sur celles modifiées par vous.
La commande peut prendre pas mal de temps à tourner. L’opération totale avec syncro entre collègues, je ne vous en parle pas. Et si vous foirez une étape, je vous garantis que ça va être la merde.
Mais c’est possible, en cas d’extrême urgence.
Pour se simplifier la tâche, il existe un petit soft spécialisé pour ça qui est bien plus rapide et avec moins de risques.
Mais ça reste dangereux, donc mollo.
L’image du post est super violente