7
votes

Svn: "style de fin de ligne incohérente" - Vérification d'un fichier avec ^ m intentionnellement

Utilisation de la version 1.3.1 SVN (Impossible de mettre à niveau en raison d'un serveur CM contrôlé par configuration) sur Centos 4.2.

Mon code (un script Bash) a spécifiquement un ^ m dedans pour une raison importante. Malheureusement, Subversion ne me laissera pas vérifier ce fichier. Il se plaint que:

svn: commettre échoué (Détails Suivre):

SVN: style de fin de ligne incohérente
SVN: Votre message de validation a été laissé dans un fichier temporaire:

J'ai prouvé que la suppression de la seule ^ m de mon code permet d'être vérifiée. Comment puis-je dire subversion que le ^ M est intentionnel et qu'il devrait autoriser l'enregistrement du fichier?


0 commentaires

5 Réponses :


0
votes

Je suppose que cela est utilisé comme une corde ou quelque chose. BASH ne doit pas avoir un moyen de coder de caractères?


0 commentaires

0
votes

Je pense que vous devez utiliser le svn: eol-style code> Propriété:

svn propset svn:eol-style LF myscript.sh


0 commentaires

0
votes

Je pense que vous pouvez définir la propriété SVN: Type MIME sur quelque chose de texte basé sur un texte (comme application / cours d'octet?). Cela pourrait faire ignorer la subversion sur les fins de la ligne.

Regardez le Type de contenu de fichier de la section SVNBook.


0 commentaires

10
votes

Vous devez Supprimer la propriété SVN: EOL-style de votre fichier. Subversion ne se souciait pas des terminaisons de ligne dans votre fichier jusqu'à ce que cette propriété ait été ajoutée. Pour citer le Book Subversion :

Cela signifie que par défaut, Subversion Ne prête aucune attention au type des marqueurs de fin de ligne (EOL) utilisés dans vos fichiers.

Le livre continue ensuite à décrire comment vous pouvez faire des soins de subversion sur les fins de ligne en définissant le svn: style eol , ce que vous ne pas vouloir.


0 commentaires

1
votes

Une autre approche serait de se débarrasser du caractère de contrôle dans le programme en premier lieu; Cela pourrait avoir d'autres avantages de la compatibilité et éviter des problèmes d'édition à l'avenir.

Vous pouvez générer un \ r en bash facilement avec xxx p> donc, par exemple: xxx

ou: xxx

( note: i savoir qu'il y a des moyens plus facilement que par appelant printf. Malheureusement, ces voies plus faciles sont différentes dans les coquillages Bash et Posix. Une solution bash-seule est assez agréable: $ '\ r' c = '\ r . Je ne suis pas sûr si cendres est-ce parce qu'il est cendres ou parce que c'est POSIX.)


0 commentaires