Subversion/SVN使用总结



    什么是 Subversion/SVN ?

    Subversion(简称SVN)是一个自由/开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空。Subversion将文件存放在中心版本库里。这 个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。于是我们就可以籍此将数据恢复到以前的版本,并可以查看数据的更改 细节。



    Subversion 的版本库可以通过网络访问,从而使用户可以在不同的电脑上进行操作。从某种程度上来说,允许用户在各自的空间里修改和管理同一组数据可以促进团队协作。因 为修改不再是单线进行(单线进行也就是必须一个一个进行),开发进度会进展迅速。此外,由于所有的工作都已版本化,也就不必担心由于错误的更改而影响软件质量。如果出现不正确的更改,只要撤销那一次更改操作即可。

    Subversion软件下载

    官方下载:

    更多客户端和工具可以看下表或者到官方网站察看:http://subversion.tigris.org/links.zh.html#clients

    Subversion服务器安装

    根据平台不同从上面软件下载中选择一个进行下载安装,安装完成。

    安装完成后,在Subversion服务器上运行以下命令:

    svnadmin create --fs-type bdb C:\svn_repository\test

    其中--fs-type bdb参数指示版本库数据保存格式,C:\svn_repository\test为新建版本库对应的物理路径,库名为test的版本库的数据和配置都将被保存在该路径下。Subversion客户端可用通过svn:\\主机名或主机IP\test来访问该版本库。

    版本库路径下的conf目录中保持了该版本库的配置信息。其中svnserve.conf保存的是Subversion服务相关的配置,可以设置匿名访问和登录访问的默认权限、用户数据库及授权数据库,一般情况下删除前面的原始配置语句行首的#即可,如启用用户数据库只需将行# password-db = passwd前的#删除即可。在passwd中设定登录用户名和登录密码。在authz中配置用户权限。因此增加用户只需修改以上配置文件,再重启一下Subversion服务即可。

    在Windows下,如果默认安装没有将Subversion服务安装为系统服务,可以再命令行中允许以下命令:

    sc create svnserve binpath= "\"C:\Program Files\Subversion\bin\svnserve.exe\"--service --root c:\repos" displayname= "Subversion" depend= tcpip start= auto

    sc description svnserve "Subversion server (svnserve)"

    其中第一条命令是增加系统服务,第二条命令是增加服务描述。注意第一条命令中参数名=后需要有一个空格再接参数值。

    删除、运行、停止Subversion服务命令依次对应为一下三条命令:

    sc delete svnserve

    net start svnserve

    net stop svnserve

    Subversion客户端使用

    Windows平台下建议使用TortoiseSVN,因为TortoiseSVN已与资源管理器集成,版本库管理下的代码文件图片增加了不同的图片指示,方便辨认,而且操作集成到了右键菜单使用很方便,另外TortoiseSVN提供了中文语言包和用户使用手册,具体使用时可参看。

    资源管理器右键TortoiseSVN菜单

    资源管理器右键TortoiseSVN菜单

    Linux平台采用命令行进行操作,具体使用可参考文章《svn在linux下的使用(svn命令)》。

    常见问题

    SVN客户端无法连接到主机的问题,如TortoiseSVN的失败提示“无法连接到主机"XXX": 由于目标机器积极拒绝,无法连接”。如下图所示:

    TortoiseSVN提示无法连接到主机

    TortoiseSVN提示无法连接到主机

    问题是服务器未启动Subversion服务,或改变端口所致。Windows下通过任务管理器查看svnserve.exe进程是否运行,如有则记录PID,然后在命令行中运行netstat -ano,查看对应PID的端口号(Subversion服务的默认端口号为3690)。如是端口改变,则需要在SVN检出URL中增加端口号。如是服务为运行则参考上文中提到的命令,增加并运行Subversion服务。

    关于更多sc安装svn服务的信息可参考http://svn.collab.net/repos/svn/tags/1.4.0/notes/windows-service.txt



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《Subversion/SVN使用总结
    标签:
    分享:

已经有1 条评论抢在你前面了~

无觅相关文章插件,快速提升流量