当前位置:首页 > 技术心得 > 正文内容

CVS迁移SVN

xjtudll8年前 (2018-11-02)技术心得7760

1、下载 CVS2SVN
http://cvs2svn.tigris.org/files/documents/1462/49543/cvs2svn-2.5.0.tar.gz

2、下载 和安装python

需要把python的安装目录加入环境变量path中.

如果安装的时候没有选择加入环境变量,那么就必须手动添加。

fb6f0cbd-903a-439a-8ef9-4acec37d51eb

必须装Python2,Python3不认的

3、安装cvs2svn

把下载的cvs2svn解压到C:\cvs2svn-2.5.0。

命令行方式进入C:\cvs2svn-2.5.0中,

输入:

python setup.py install

如果没有添加到环境变量,不认python命令的。

4、cvs转svn

svn不要提前创建目录,如果提前建立了目录,会提示错误。其实修改命令也可以。

命令行里输入:

python cvs2svn -s E:\SVNROOT --use-cvs --encoding=gb18030  --encoding utf8 --encoding gbk E:\cvs_root

其中,E:\SVNROOT 为转换后svn仓库生成的路径,E:\cvs_root为现有cvs代码库路径。

不过我照着操作的时候,老提示:

ERROR: error executing cvs: [Error 2]

Please check that cvs is installed and in your PATH.

所以我就换了个命令(实际上就是将cvs2svn标识清楚在哪个文件夹):

python E:\cvs2svn-2.5.0\cvs2svn -s E:\SVNROOT --existing-svnrepos E:\cvs_root

命令里的 --existing-svnrepos就是为了防止文件夹提前建好了。

不过后来还是报错了,显示了一堆乱码,实际就是编码的问题。

更改命令如下:

python E:\cvs2svn-2.5.0\cvs2svn -s E:\SVNROOT --encoding=gb18030 --encoding utf8 --encoding gbk --existing-svnrepos E:\cvs_root

没有提前建SVN目录的话,用下面的代码

python E:\cvs2svn-2.5.0\cvs2svn -s E:\SVNROOT --encoding=gb18030 --encoding utf8 --encoding gbk  E:\cvs_root

没有错误提示,就说明convert成功了。

(1)如果有报错:

WARNING: Problem decoding log message: xxxxxxxxx

ERROR: There were warnings converting author names and/or log messages
to Unicode (see messages above).  Please restart this pass
with one or more '--encoding' parameters or with

'--fallback-encoding'.      

解决方法:      

--encoding= xxxx 多加几种编码编码参数可根据cvs库中的实际编码设定。

(2) 如果报错找不到svnadmin之类的,其实就是没有事先建立好版本库(不是文件夹)

ea2dcc05-4ab4-4949-a607-71a767731820

搞定以后可以通过VisualSVN server挂载代码仓库

(3)中间可能提示个别文件转换有问题

先按现在的做法是将那几个文件删了,因为不多。

 

参考资料:

http://www.itsqueeze.com/2010/12/using-cvs2svn-on-windows-converting-a-cvs-repository-to-svn/

https://blog.csdn.net/huanqiangyi7463/article/details/79636164

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/523/

标签: SVN
分享给朋友:

“CVS迁移SVN” 的相关文章

模数转换器的分类

直接ADC是将输入模拟电压直接转换成数字量,如并联比较型ADC和逐次比较型ADC; 间接ADC是先将输入模拟电压转换成时间或频率,然后再把这些中间量转换成数字量,如双积分型ADC。 并联比较型ADC 优点:采用各量级同时并行比较,各位输出码同时并行产生,因此转换速度快,转换速度与输出码位数无关...

世界城市时间及时区

时区是地球上的区域使用同一个时间定义。以前,人们通过观察太阳的位置(时角)决定时间,这就使得不同经度的地方的时间有所不同(地方时)。时区通过设立一个区域的标准时间部分地解决了这个问题。世界各个国家位于地球不同位置上,因此不同国家的日出、日落时间必定有所偏差。这些偏差就是所谓的时差。 1884年国际经...

Android-如何关闭AlertDialog.Builder对话框

AlertDialog.Builder对话框没有类似finish()或者dismiss()这样的方法。 但是它的父类AlertDialog有dismiss方法,而且AlertDialog.Builder在.show()的时候会得到一个AlertDialog对象,我们就可以用dismiss方法将该Bu...

PHP安装之后没有php.ini文件

问题: 多数教程都说修改php.ini,但是在安装目录里找了半天,根本没有php.ini,只有: php.ini-development php.ini-production 答案: 其实php.ini就是上述两个文件任选一修改而来。 当然,测试的话更合适的是php.ini-develo...

Altium pcb文件过大

Altium pcb文件过大

问题描述: 一些Altium Designer设计的文件看上去板子小且走线也不多,但是保存后文件却比较大。 原因: 通常是在PCB中放置了非默认字体的字符。 在软件里面有一个默认的选项“Embed  TrueType Fonts inside PCB Doc...

利用Excel绘制时序波形

利用Excel绘制时序波形

以Excel2007为例。 打开Excel,点击绘制表格边框按钮,如图所示。 利用“绘图边框”,按照自己的想法绘制波形,如下图所示。 拷贝波形,粘贴到Word。...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。