Сделать путь в нижнем регистре и включить в дамп SVN

У меня есть библиотека проектов C ++, и я готовлю перенос с Windows на Linux. В то же время мне нужно реорганизовать репозиторий через svn dump.

Я хотел бы сделать все имена файлов и каталогов строчными буквами в дампе svn с помощью SED, а затем снова воссоздать репозиторий SVN.

Возможно, я мог бы сделать все #include "something.h" строчными буквами, используя svn dump и SED, но в этом случае я должен проигнорировать контрольную сумму. В любом случае я мог бы сравнить результат нового репозитория и старого репозитория с помощью какого-то нечувствительного к регистру инструмента сравнения каталогов.

Как мне обработать svn-дамп с помощью SED, чтобы все имена файлов и каталогов (включая их) были строчными?

Я ожидаю, что это должно быть что-то вроде этого Могу ли я использовать регулярное выражение в svndumpfilter include?, но я действительно не понимаю SED и регулярное выражение.

Дамп нужно менять с

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

to

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

Также необходимо изменить свойства Node-copyfrom-path.


person Tomas Kubes    schedule 29.04.2014    source источник
comment
Пожалуйста, добавьте несколько примеров данных и ожидаемого результата для них, чтобы помочь вам лучше.   -  person clement    schedule 30.04.2014


Ответы (1)


Наконец, я справился с работой с помощью SED. Следующий пример предназначен только для ствола:

sed -b -e "s#^\(Node.*path\): \(trunk/.*\)$#\1: \L\2#" repo.dump > repolower.dump
person Tomas Kubes    schedule 02.05.2014