我有一个C++项目库,我正在准备从Windows到Linux的移植。同时,我需要通过svn转储重新组织存储库。
我希望使用SED使svn转储中的所有文件名和目录都是小写的,然后重新创建SVN存储库。
也许我可以使用svn dump和SED让all #include“omething.h”也是小写的,但在这种情况下我应该忽略校验和。无论如何,我可以使用一些不区分大小写的目录比较工具来比较新旧存储库的结果。
我应该如何使用SED处理svn转储,以使所有文件名和目录(以及包括)小写?
我希望它应该是这样的Can I use Regular expression in svndumpfilter include statement?,但我并不是真的理解SED和正则表达式。
需要将转储从
....
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
...还有一些属性Node-copyfrom-path,也需要更改。
发布于 2014-05-02 13:46:42
最后,我使用SED完成了这项工作。以下示例仅适用于干线:
sed -b -e "s#^\(Node.*path\): \(trunk/.*\)$#\1: \L\2#" repo.dump > repolower.dumphttps://stackoverflow.com/questions/23367101
复制相似问题