Liunx下 svn客户端commit时候 字符编码出错 终极解决办法

今天一位同事不小心将Liunx服务器(ubuntu14.04)的svn仓库删掉了。
足足几个G的svn仓库啊!本地上传要到什么时候。
文件恢复不管用。
于是想到了在服务器本机有最新的源码文件,决定使用服务器上面的源码进行仓库重建。

SVN配置先不多说。

我删掉原来源码目录的

rm -rf ./.svn 

更新下来,没问题。因为第一个版本为空。

svn co svn://127.0.0.1/web --username web --password 123456 ./

这都不是问题。

但在把本地源码添加的时候,出现问题了。

svn add * --force

源码目录里面含有中文名,郁闷了
网上说一大堆的方法都不行
例如改环境字符编码为中文
export LC_ALL=C
……

万般无奈,删含有中文的文件名吧!请看方法。

方法

得到本源码目录下的所有文件名,重定向到bbb文件

find ./* -type f > bbb

使用vim编辑bbb文件

vim ./bbb

中途我尝试把bbb文件在windows环境下使用sublime text编辑,但是好像会出问题。

删除不含中文的正常行

:g/^[a-zA-Z0-9\.\/\_\-]*$/d

加上删除文件的语句

:%s/^/rm -rf /g

并在本文件首行输入

#!/bin/bash

退出 vim

:q!

Liunx下 svn客户端commit时候 字符编码出错 终极解决办法_第1张图片

最后执行删除

bash ./bbb

注意的地方
1. 不要在没有备份的情况下去删除linux上面的重要文件
2. 在svn管理的源码中不要使用中文
3. 遇到问题不要慌

你可能感兴趣的:(SVN,服务器,ubuntu)