Faire une open source Git quand vous avez des clés secrètes
-
29-09-2019 - |
Question
J'ai un projet sur GitHub derrière un référentiel privé. Je veux faire le public repo. Cependant, mon projet utilise des clés secrètes.
Comment puis-je faire le public du projet tout en protégeant l ' « histoire » de ces clés secrètes? Je devine que je suis SOL, et devrait entraîner la nullité simplement les clés pour empêcher leur utilisation.
Notez que ce n'est pas la même question que Comment open source une application qui utilise les clés de l'API
ou
Comme mon projet est déjà sur Git, toute l'histoire de la source peut être facilement vu. Ce que je suppose que je pourrais faire est bifurquent un projet distinct avec les clés API cachées, et rendre public repo. Mais les utilisateurs manqueraient sur toute l'histoire de ramification, qu'ils peuvent être curieux de savoir (je sais que je le ferais).
La solution
vous pouvez supprimer les clés secrètes du dépôt à l'aide d'un marteau comme git filter-branch
. Il y a une explication agréable sur GitHub .
Autres conseils
J'utilisé une nouvelle .gitignore qui a déjà exclu toutes les choses privées / clés secrètes et tout copié dans un répertoire frais. Si je jamais accès besoin de l'histoire ancienne git, je l'ai laissé une copie.