公司将svn架设起来了.现在需要将所有的代码,文档统一通过svn管理起来.(公司的项目比较多.有的项目组是单独.所以使用版本管理的工具很多.有的用cvs,svn,vss等等.但是主要的是cvs和svn).通过投票表决.决定统一使用svn.
作为技术组.要提供技术支持,遇到的问题是各个项目组将原来使用cvs的项目转成svn.当然最主要的是要保存以前的版本.
任务下达后.google后.发现将cvs转成svn的有2个工具.一个是svn-importer.两外一个是. cvs2svn.
先说svn-importer .到官方网站上.介绍还是不错的.可以转换cvs,vss等等了.正好满足现在需要.于是决定使用 svn-importer(http://www.polarion.org/index.php?page=overview&project=svnimporter)
网上的介绍也是很多.大家可以去google几个.我主要参照http://www.blogjava.net/yongbing/archive/2007/03/04/101761.html 上面的配置一切都很顺利.配置成功.转换过程也是比较痛苦的.我等了几个晚上.终于将一个转换成功.于是兴奋的查看转换的成果.
结果..出现了和他们一样的问题.==>乱码.使用小乌龟的svn 的客户端不能查看到乱码的版本库.(问题很简单.可能是乱码了路径就发生变化了.总之是无法访问了..~~~~(>_<)~~~~ ).
但是通过浏览器可以查看.于是打算使用浏览器的方式...经过多方查找找到了一个叫 "SVNProtocolHandler"的svn的浏览器插件(http://tortoisesvn.net/SVNProtocolHandler).上面介绍是可以看到svn的版本.使用后.ie死掉.试验了几次后无果.彻底的放弃.
总结:放弃 svn-importer的主要原因有2个.第一个是转换后的乱码,就算是浏览器的svn插件可以使用.但是功能和svn使用的使用习惯也会将SVNProtocolHandler pass掉... 虽然我可以通过svn的插件将代码checkout.然后修改乱码的地方然后在传上去.这个真的很费劲,费时.这也是第二个原因.因为svn-importer本身的转换速度就是很慢.我还要做这些善后的工作.很慢.麻烦.
于是使用 cvs2svn
同样 google.发现好多人也是存在着转换后乱码的问题.但是好在cvs2svn 支持 encoding ..心想.好多编码格式.总有一款适合我吧.呵呵.
参照 http://bbs.iusesvn.com/thread-245-1-1.html 配置.
第一步. 下载:python ..我直接下载了 python2.6(个人觉得高版本对低版本有兼容吧.rails好像没有)
第二步.下载:cvs2svn.我下载的是 cvs2svn2.1.1
第三步.下载:UnxUtils.zip..这个下载的时候有些麻烦.因为习惯了使用 firefox浏览器.下载也是用ff.结果下载了几次都是错误.还以为下载地址不可用呢.后来使用ie.成功下载.但是事后证明下载的那个UnxUtils.zip版本有点低.又下载了UnxUpdates.zip(UnxUtils.zip的升级包吧.).使用==>ok
第四步.下载:rcs57pc1.zip 没啥问题
第五步.改下的都下了.该配的都配了.就查使用命令行了.
于是 cmd后转到 cvs2svn目录下.执行 上面给的一句话 C:\Python\python cvs2svn –s d:\svn\repository\project1 \project1
执行到最后.出现错误.说要加入 --encoding或者 --fallback-encoding(这点英文还可以).
让加咱就加.先加 --fallback-encoding 失败.说是一个包下的路径字符集好像不对.后来使用 --encoding=gbk成功(当然这都是我多次试验后的成功啊..~~~~(>_<)~~~~ ..失败还真是成功他亲妈啊..实践是检验真理的唯一一条道啊.)
当然试验的过程很痛苦的...主要还是参看 http://cvs2svn.tigris.org/cvs2svn.html 在最后给出了一些转换的命令行.
要想了解更多的话.那就只有仔细阅读上面说的了.
最后成功转成.使用到现在好像还没啥问题.
希望大家都能成功的转换成功.
感谢 http://www.blogjava.net/yongbing/archive/2007/03/04/101761.html和http://bbs.iusesvn.com/thread-245-1-1.html
我觉得这2个写的都挺好的.于是将这些转成pdf格式.放到附件中
分享到:
相关推荐
本教程将详细解释如何使用两种工具,即SVN-Importer和CVS2SVN,来进行这一迁移过程。 ### 1. SVN-Importer SVN-Importer是一款用于将CVS仓库转换为SVN仓库的工具。它的主要优点在于简单易用,适合小型项目或者对...
cvs2svn --cvs-root=<CVS根目录> --svn-url=<SVN仓库URL> --config-file=<配置文件> <输出目录> ``` 3. **导入到SVN**:使用SVN客户端(如TortoiseSVN),将生成的SVN格式数据导入到新的SVN仓库中。 **四、注意...
迁移过程中,SVN Importer会处理CVS版本库的结构和历史记录,将其转换为SVN可理解的形式,并保存在新的SVN版本库中。同时,`readme.txt`和`changes.txt`提供了额外的使用指南和软件的更新信息,确保用户能顺利进行...
cvs2svn is a program that can be used to migrate a CVS repository to Subversion (otherwise known as "SVN") or git. Documentation: The list of cvs2svn features explains briefly why converting a ...
cvs2svn的FAQ涵盖了从单个仓库的迁移到多项目仓库的转换,再到EOL(End-of-Line)翻译问题的处理,以及获取帮助和报告错误的途径。 #### 九、CVSNT仓库的特别注意 尽管一些用户报告了将CVSNT仓库迁移到SVN的成功...
《我的cvs2svn笔记》是一份详细的指南,旨在帮助用户在Windows环境下将CVS(Concurrent Versions System)版本库转换为SVN(Subversion)版本库。CVS是一种广泛使用的源代码控制系统,而SVN则因其先进的特性,如分支...
### 将CVS库转换为SVN库 随着版本控制系统的发展与演进,从较早的集中式版本控制系统(如CVS)到更先进的Subversion(SVN),开发者们经常面临将现有CVS仓库迁移到SVN的需求。本文将详细介绍如何在Windows环境下...
下面将详细介绍CVS和SVN的配置学习要点。 1. CVS简介: CVS是一种早期的版本控制系统,它基于客户端-服务器架构,允许开发者在不同的计算机上工作并同步更改。CVS的核心特性包括版本追踪、分支与合并、冲突解决...
用于将CVS导入SVN库,本版本对应的JAVA版本是1.5,可放心使用。使用方法,先配置config.properites,然后使用run.bat option config-file 命令,单独执行run.bat可查看各参数作用。
作用:将CVS库转为SVN库,是SVN比较好的一个插件 (1)能简单的将将CVS库转为SVN库 (2)保留历史和标签 绝对超值:适用从cvs导出数据到svn,消除了中文乱码问题 使用简单:解压后即可使用 注:当时使用的时候费了好大的...
`cvs2svn` 是一个开源的工具,专门设计用于将CVS仓库转换为SVN仓库。它能够处理复杂的CVS历史数据,包括分支和合并,以及各种CVS的异常情况。`cvs2svn-2.5.0.tar.gz` 是该工具的源代码包,用户需要自行编译安装。在...
CVS(Concurrent Versions System)和SVN(Subversion)都是源代码版本控制系统,用于管理和跟踪文件及目录的变更。它们都属于SCM(Software Configuration ...选择CVS还是SVN,取决于具体项目的需求和团队的工作习惯。
### SVN与CVS对比分析 在软件开发领域,版本控制系统(Version Control ...对于正在考虑升级或转换版本控制系统的团队而言,深入了解SVN与CVS之间的差异,评估各自项目的需求和长期目标,将是做出明智决策的关键。
相较于CVS(Concurrent Versions System),SVN在安全性、性能和易用性上有所提升,因此逐渐成为版本控制系统的首选。 在“svn-win32-1.5.5_dev.zip”压缩包中,我们主要关注两个关键文件:“svn服务配置.txt”和...
### SVN—项目管理工具详解 #### 一、版本控制的重要性及背景 在现代软件开发过程中,版本控制成为了不可或缺的一部分。特别是在多人协作的项目中,如何有效地管理代码版本、跟踪更改历史、解决冲突等问题变得尤为...
NULL 博文链接:https://zzxanadu.iteye.com/blog/690400
CVS(Concurrent Version System)、SVN(Subversion)和VSS(Visual SourceSafe)是三种著名的版本控制系统,各有特点和优劣。下面我们将深入探讨这三者之间的差异。 CVS是一种早期的开源版本控制系统,它允许...
标题中的“快速清理svn控制文件注册表-删除所有SVN目录.reg”指的是一个用于清理Subversion(SVN)控制文件的注册表脚本。Subversion是一个版本控制系统,它会在每个受控的文件夹中创建一个名为`.svn`的隐藏子目录来...