2014-04-29 2 views
0

J'ai une bibliothèque de projet C++ et je prépare le port de Windows à Linux. Dans le même temps, j'ai besoin de réorganiser le dépôt via svn dump.Rendre le chemin minuscule et inclut dans le vidage SVN

Je souhaite que tous les noms de fichiers et répertoires soient en minuscules dans le fichier svn dump en utilisant le SED, puis recréer le référentiel SVN. Peut-être que je pourrais faire tout #include aussi en minuscules "quelque chose.h" en utilisant svn dump et SED, mais je devrais ignorer la somme de contrôle dans ce cas. Quoi qu'il en soit, je pourrais comparer le résultat du nouveau référentiel et de l'ancien référentiel par un outil de comparaison de répertoires insensible à la casse.

Comment devrais-je traiter svn dump en utilisant SED pour faire tous les noms de fichiers et répertoires (et inclus) en minuscules?

Je m'attends à ce qu'il soit quelque chose comme Can I use Regular expression in svndumpfilter include statement?, mais je ne comprends pas vraiment le SED et l'expression régulière.

La décharge doivent être modifiés de

.... 
Node-path: trunk/Something/Anything.cpp 
Node-action: add 
Node-kind: dir 
Prop-content-length: 10 
Content-length: 10 
PROPS-END 
... 

à

... 
Node-path: trunk/something/anything.cpp 
Node-action: add 
Node-kind: dir 
Prop-content-length: 10 
Content-length: 10 
PROPS-END 
... 

Il y a également des propriétés Node-copyfrom-chemin, qui ont besoin d'être changé.

+0

Veuillez ajouter quelques exemples de données et la sortie attendue pour le même, pour vous aider à mieux. – clement

Répondre

0

Enfin, j'ai géré le travail en utilisant SED. L'exemple suivant est pour la ligne de réseau uniquement:

sed -b -e "s#^\(Node.*path\): \(trunk/.*\)$#\1: \L\2#" repo.dump > repolower.dump 
Questions connexes