Problème strong> Considérez cet arbre de fichier comme mon référentiel de développement. P>
- foo/
- .git/
- [...]
- bar/
- backupclient.py
- supersecretstoragecredentials.ini
5 Réponses :
Qu'est-ce que vous décrivez en option 1 est essentiellement couvert par la macule code> étape d'un contenu pilote de filtre . P>
p>
Vous avez les deux options présentées dans " Comment travailler sur une bibliothèque de gouttes? "Question. P>
Le script de tampon prendrait votre Mais à côté de l'aspect technique de la manière dont vous mettrez en œuvre votre politique, la mesure principale consiste à vous assurer que vos valeurs secrètes ne stockent pas du tout dans un repo git, mais deviennent à partir d'une autre référentielle. P> supersecrettoragecretientials.ini-Exemple code> (Versed), copiez-le sous forme de
supersecretStorageCreDentials.ini code> ( pas em> Versed, ignoré par GIT), et remplissez ses valeurs d'une autre source. p>
J'utilise votre solution (vos deux solutions sont identiques, seuls les noms de fichiers diffèrent). Avez-vous des problèmes avec cela? Quel type de fonctionnalité attendriez-vous?
En outre, il existe une solution plus intéressante p> espérons que c'est ce que vous voulez. Cependant, cela échouerait si l'amont change le fichier et que vous tirez le changement (pas complètement sûr, c'est bon ou mauvais). P> P>
Vérifiez le fichier SuperSecretStorAreCreDentials.ini avec certaines valeurs d'espace réservé, puis
git update-index --no-assume-unchanged supersecretstoragecredentials.ini
Le seul problème avec ces solutions est qu'un git tirer code> par un autre utilisateur créera des conflits de fusion. Pourtant, c'est une excellente solution tant que votre base de consommation est limitée.
@jwandborg Bon point à noter! a proposé cette solution que ce fichier est utilisé pour stocker des informations d'identification locales.
Dans mon expérience, après avoir essayé toutes les options énumérées dans votre question et dans les réponses jusqu'à présent, votre option n ° 2 a prouvé le plus simple et le plus propre. Cela résout le problème de manière fiable, avec la moindre magie et est la plus facile à comprendre. C'est ennuyeux de la meilleure façon. P>
Et avec cela, la solution mentionnée dans Stackoverflow.com/a/8309450/202522 est le choix le plus simple et le meilleur choix imo.
Non, vous voulez un fichier .gitingore code> pour le fichier
_local.ini code>.
Quelque chose que je suis essuie pour le moment est des secrets git. p>
https://github.com/awslabs/git-secrets P>
Il raccroche dans le processus de validation GIT et vérifie les motifs qui ressemblent à des informations d'identification qui ne doivent pas être vérifiées. P>
Vous devez vous assurer qu'il est installé sur le système de chaque développeur et configuré pour chaque référentiel GIT. Cela peut être réalisé assez facilement si vous intégrez une vérification dans le processus de construction. P>