Existe-t-il un fichier ou un menu qui me permette de modifier les paramètres permettant de gérer les fins de ligne?
Il y a 3 options:
Commander de style Windows, commettre de style Unix
Git convertira LF en CRLF lors de l'extraction de fichiers texte. Lors de la validation des fichiers texte, CRLF sera converti en LF. Pour les projets multiplates-formes, il s'agit du paramètre recommandé sous Windows ("core.autocrlf" est défini sur "true").
Commander tel quel, commettre de style Unix
Git n'effectuera aucune conversion lors de l'extraction de fichiers texte. Lors de la validation des fichiers texte, CRLF sera converti en LF. Pour les projets multiplates-formes, il s'agit du paramètre recommandé sous Unix ("core.autocrlf" est défini sur "entrée").
Commander tel quel, commettre tel quel
Git n'effectuera aucune conversion lors de l'extraction ou de la validation de fichiers texte. Le choix de cette option n'est pas recommandé pour les projets multiplates-formes ("core.autocrlf" est défini sur "false")
La manière normale de contrôler ceci est avec git config
Par exemple
git config --global core.autocrlf true
Pour plus de détails, faites défiler vers le bas dans ce lien vers Pro Git vers la section intitulée "core.autocrlf"
Si vous voulez savoir dans quel fichier il est enregistré, vous pouvez exécuter la commande:
git config --global --edit
et le fichier de configuration global git devrait s'ouvrir dans un éditeur de texte, et vous pouvez voir d'où ce fichier était chargé.
Format de fin de ligne utilisé dans le système d'exploitation
CR
(retour chariot \r
) et LF
(saut de ligne \n
)LF
(LineFeed \n
)Nous pouvons configurer git pour corriger automatiquement les formats de fin de ligne pour chaque système d'exploitation de deux manières.
.gitattributes
git config --global core.autocrlf input
Cela corrigera toute variable CRLF
en LF
lorsque vous validez.
git config --global core.autocrlf true
Cela vous assurera que, lorsque vous passerez à la caisse dans Windows, tous les LF
seront convertis en CRLF
C'est une bonne idée de conserver un fichier .gitattributes
, car nous ne voulons pas nous attendre à ce que tous les membres de notre équipe définissent leur configuration. Ce fichier doit conserver le chemin racine du référentiel et s'il en existe un, git le respectera.
* text=auto
Cela traitera tous les fichiers en tant que fichiers texte et les convertira en ligne du système d’exploitation se terminant à la caisse, puis reviendra automatiquement en LF
lors de la validation. Si vous voulez dire explicitement, utilisez
* text eol=crlf
* text eol=lf
Le premier est pour le paiement et le second est pour le commit.
*.jpg binary
Traitez toutes les images .jpg
comme des fichiers binaires. Donc, aucune conversion nécessaire
Pour une solution de configuration de référentiel pouvant être redistribuée à tous les développeurs, consultez l'attribut text dans le fichier . Gitattributes . De cette façon, les développeurs ne doivent pas définir manuellement leurs propres fins de lignes sur le référentiel. Comme différents référentiels peuvent avoir différents styles de fin de ligne, global core.autocrlf n'est pas le meilleur, du moins à mon avis.
Par exemple, la désactivation de cet attribut sur un chemin donné [. - text] forcera git à ne pas toucher les fins de ligne lors de l’enregistrement ou de la sortie. À mon avis, c'est le meilleur comportement, car la plupart des éditeurs de texte modernes peuvent gérer les deux types de fins de ligne. En outre, si, en tant que développeur, vous souhaitez toujours effectuer une conversion de fin de ligne lors de l'archivage, vous pouvez toujours définir le chemin d'accès pour qu'il corresponde à certains fichiers ou définir l'attribut eol (dans .gitattributes) sur votre référentiel.
Consultez également cet article connexe, qui décrit plus en détail les attributs de fichier et de texte .gitattributes: Quelle est la meilleure stratégie de traitement de CRLF (retour chariot, saut de ligne) avec Git?
Si vous souhaitez reconvertir les formats de fichier qui ont été modifiés au format UNIX à partir du format PC.
(1) Vous devez réinstaller tortoise GIT et, dans la section "Conversion de fin de ligne", assurez-vous que vous avez sélectionné l'option "Extraire tel quel - Archiver tel quel".
(2) et conservez les configurations restantes telles quelles.
(3) une fois l'installation terminée
(4) écrivez toutes les extensions de fichier converties au format UNIX dans un fichier texte (extensions.txt).
ex:*.dsp
*.dsw
(5) copiez le fichier dans votre clone Exécutez la commande suivante dans GITBASH
while read -r a;
do
find . -type f -name "$a" -exec dos2unix {} \;
done<extension.txt