50 votes

Distribuer la configuration git avec le code

En essayant de normaliser la plate-forme pour les développeurs, l'une de mes besoins serait de commettre l' .git/config , de sorte que tout le monde a le même CRLF config sans oublier de le régler à la main.

Comment puis-je le configurer?

Je suis un peu préoccupé par tous ces sentiments négatifs à l'encontre autocrlf. Pourquoi ne pas supprimer cette fonctionnalité si cela ne fonctionne pas? Soit les responsables de cette fonction sont mal compris ou ils ont fait une expérience ratée avec elle et elle doit être enlevée pour empêcher d'autres personnes de perdre leur temps (la lecture de l'obscur page de man, en posant des questions, les gens de répondre à ces questions, etc.).

85voto

VonC Points 414372

J'ai toujours trouvé l' autocrlf config bien problématique. (comme il est dit dans ma réponse Git 1.6.4 beta sur Windows (msysgit) - Unix ou DOS de terminaison de ligne)

Remarque: msysgit question 538 pour la valeur true (qui est la valeur par défaut définie par la msysgit programme d'installation), mais je ne suis pas convaincu.

Je préfère l'une des trois solutions suivantes pour:

  • la configuration d'une fin-de-ligne de style
  • faire que la configuration se propagent à travers les différents Git repos

1. En utilisant le nouveau paramètre de configuration d' core.eol (1.7.2+)

Définit le type de fin de ligne à utiliser dans le répertoire de travail pour les fichiers qui ont la propriété de texte ensemble.
Les solutions de rechange sont 'lf', 'crlf"et"native', qui utilise la plate-forme du natif de fin de ligne.
La valeur par défaut est originaire.

2. une validation/vérification de l' .gitattribute. Voir gitattributes homme page: crlf ou core.autocrlf est la façon d'enregistrer en .gitattributes le fichier de ce qui était auparavant une locaux config attribut.

3. un git attribut pilote de filtre qui peut:

  • appliquer tout type de mise en page standard, vous pouvez définir
  • appliquer ces normes à certains fichiers/répertoires
  • être enregistré comme un fichier de config (.gitattributes) en mesure d'être poussé n'importe où.

5voto

Jason Axelson Points 587

Si vous utilisez un système d'exploitation de la famille Unix, je vous conseillerais simplement de créer un lien symbolique.

 ln -s .git/config git-config
git add git-config
git commit -m "Now tracking git config file"
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X