好吧,这是我的失误。不知怎的,我从 cvs2svn 迁移时忘记取消注释 EOLStyleFromMimeTypeSetter()。差不多是一周前的事了,已经提交了很多更改,所以新的迁移不是一个选择。
我现在该怎么办?我已手动将属性设置svn_eol-style
为native
某些项目,但仅限于主干(IDEA 帮助我在这里递归执行此操作)。这花了很长时间,但我仍然缺少所有分支。
有什么好主意吗?
该存储库位于 Linux 上。
答案1
批量修改行尾然后提交不是一个好主意,因为它会破坏跨越该差异的每个差异。更好的计划是从转换中转储 svn 存储库,重新进行转换并重新导入转储。
确保您首先备份您的存储库。
找出转换后的第一个 subversion 提交修订号。在我使用的地方使用此数字
# svnadmin dump -r<revision>:HEAD repository > repository.dump
重新进行转换
# svnadmin load repository < repository.dump
您可能会发现这会使人们的工作副本无效,因此在进行转换之前请先警告他们提交更改。
您可能还想首先在存储库的测试副本上执行此操作以确保其正常工作。
答案2
就像是
find * -type f | fgrep -v .svn/ | xargs -d '\n' dos2unix
或者
find * -type f | fgrep -v .svn/ | xargs -d '\n' svn propset [...]
我想到了。(中间可能还会有更多 grep。)