Cauchemar "style de fin de ligne incohérent"
Je suis complètement coincé avec un SVN erreur lors de la validation de 2447 fichiers à la fois. Je suis en utilisant TortoiseSVN (dernière version) sur Windows 7 64bits.
Le fait est que certains fichiers ont été créés sur Mac, et autres sur PC, donc TortoiseSVN cessé de le commettre avec un ennuyeux Inconsistent line ending style
erreur.
Au début, pour résoudre ce problème, j'ai ouvert manuellement le fichier incriminé dans netbeansa ajouté un espace vierge, enlevé et enregistré le fichier, de sorte Netbeans converties correctement tous les caractères de fin de ligne, mais il semblerait qu'il y ait plus de "certains fichiers" incriminé.
Bien sûr j'ai cherché sur le web pour trouver une solution mais je n'ai pas trouvé de convenable pour l'environnement Windows.
Je suis actuellement à se taper la tête contre les murs.
source d'informationauteur Epoc | 2013-05-24
Vous devez vous connecter pour publier un commentaire.
Sous Windows 7, vous pouvez utiliser
Notepad++ v5.6.8
pour convertir EOLSi je réponds à ma propre question avec @assylias réponse :
Recherche & remplacer avec Netbeans avec cette regex fait le travail.
Edit : mon problème était que d'un script personnalisé inséré mauvais caractères de fin de ligne (
\n
au lieu de\r\n
) de ces fichiers)Dans Notepad++, sélectionnez "Affichage -> Show Symbole -> Show de Fin de Ligne"
Dans la zone de recherche (ctrl + F) sélectionnez l'Expression Régulière en mode de recherche et de recherche de la chaîne:
(traduction: \n sans \r avant).
Ce qui vous amène directement à la ligne de problème(s) où vous verrez la ligne se terminant par LF plutôt qu'avec la paire CR-LF
Si vos fins de ligne sont en ordre, il se peut que votre fichier texte a un UTF16 Marque d'Ordre des Octets (BOM).
Vous pouvez corriger cela à l'aide de Notepad++. Encodage -> Convertir en UTF-8.
Dans Vim ou GVim sous Windows, les fichiers endommagés ont tous montré
^M
à la fin de chaque ligne.Pour résoudre le problème:
:s/\r//g
pour supprimer le cassé extra fins de ligne.En relation avec le post juste au-dessus, en fait le vim regexp devrait être
:1,$s/\r//g
.Une autre façon sur *n?x est à l'aide de sed:
À résoudre le problème avec les différentes fins de ligne, vous pouvez définir la propriété SVN comme suit:
svn propset svn:eol-style natif my_file
Bien que cela va résoudre les problèmes de fins de ligne et de faire de la fusion de plus facile, cela signifie que les torts de montrer à la personne l'ajout de l'eol-style que le changeur de toutes les lignes, et cela signifie aussi que vos fichiers de travail finira par copié dans le dossier temp lors d'une diff.
Le blâme problème peut être résolu par la suite en faisant ceci:
svn blâmer my_file -x "--ignore-espace-changer --ignore-eol-style"