Remplacer git-crypt par git-secret
Git-crypt n'est plus mis à jour depuis 2017 et ne permet pas de supprimer facilement une clé GPG :/
Une alternative pourrait être git-secret : https://git-secret.io
J'ai fait un POC sur ma machine, l'outil fonctionne comme suit :
- On initialise le repo avec
git-secret init
(comme git-crypt) - On ajoute de nouvelle clé GPG en indiquant une des adresses mails de l'identité correspondante:
git secret tell raoul@example.com
. git-secret va alors créer son propre keyring que l'on peut manipuler avecgpg --homedir .gitsecret/keys ...
en cas de besoin. - On indique quels fichiers git-secret doit chiffrer sur le repo git:
git secret add vault.key
. Ce fichier ne sera en réalité jamais commité (= jamais publié sur le repo git), voir le point suivant. - On chiffre les fichiers gérés par git-secret avec
git secret hide
. Cela va créer des fichiers chiffrés du stylevault.key.secret
. Ce sont ces fichiers qui seront présents sur le repo git.
Et lorsqu'on clone le repo git, il suffit de faire git secret reveal
pour déchiffrer les fichiers et retrouver vault.key
.
Le seul problème que j'ai eu : j'avais plusieurs clés GPG avec la même adresse e-mail, et git-secret ne savait pas laquelle rajouter… et donc échouait lamentablement. J'ai juste fait gpg -a --export <ma clé gpg> > hgo.asc
puis gpg --homedir .gitsecret/keys --import hgo.asc
et c'était bon :)
En tout cas, à première vue l'utilisation m'a l'air plus simple qu'avec git-crypt