windows下SVN版本管理服务器配置

原创 2007年09月24日 16:02:00

前一阵子项目开发的时候用到版本管理,以前用的是VSS,现在准备用一下SVN,摸索了一阵子,大概搞清了怎么配置和使用。与VSS相比,我个人觉得SVN使用起来方便些。 

首先是软件的安装,我们这里要用到两个软件,一个是服务器端软件subversion,一个是客户端TortoiseSVN。两个都是免费软件。下载的地址在网上有很多地方介绍,但对可怜的教育网或没有上国际网的同胞来说,那是一个比较困难的问题。因为网上给出的地址绝大部分是软件的官方网址,是国际网。而在国内,本人几乎很难搜到顺利下载的地址。直到利用迅雷搜索,才顺利解决软件下载问题。服务器端和客户端版本理论上应该配套,但客户端版本比服务器端新也是没问题的。

服务器软件可能是不需要安装的,直接复制过来就能使用,那就更好。客户端最好选择安装版。如果不懂无需安装的软件要进行一系列烦琐的命令配置,最好是下载那些安装版客户端的,这样,它会在安装过程中自动进行一些必须的配置。服务器端和客户端安装的顺序无关紧要。

服务器上最好服务器端和客户端都安装。事实上,服务器机不安装服务器端软件也行,客户端TortoiseSVN 也自带有服务器,但是在本人使用的过程中,远程客户端不方便访问,并且提交的速度慢得难以忍受。如果进行单机版本管理的话,无需安装服务端,也没有问题。

服务器端:服务器端软件subversion是属于命令行式的,没有图形化操作界面,这对于生手来说有点麻烦,不过所幸的是,我们只需记住一条命令即可。其余的都可以通过客户端软件的图形界面来控制。这条命令是:

svnserve -d -r 版本存放地址

在这之前,使用右键的方式(之前必须安装好服务端和客户端TortoiseSVN),创建一个版本存放仓库等等,进行一些必要的操作(这里不再说明,这完全得用客户端软件进行的,网上有很多说明,搜索TortoiseSVN的使用方法就可以得到完整说明,如:http://hi.baidu.com/wangzhe1945/blog/item/25fdc5b439665a718ad4b271.html)。虽然利用客户端软件,但进行地却是与服务器命令操作同样的效果。不妨假设先在E盘创建文件夹:E:/svnServer/projects。并在此文件夹( 保证为空文件夹)创建一版本存放仓库。此时开始-运行-cmd,在出现的窗口中,利用上面提到的命令:

svnserve -d -r E:/svnServer/projects

注意命令中后面的路径中不能含有空格,有空格需要特别处理。这样就启动了版本服务器了,表面上没有什么反应,但在任务管理器中可以看到多了一个svnserve.exe的进程。注意不能关闭此命令窗口,否则版本服务器也随之关闭。如果你使用的不是安装型的客户端软件,那么这条命令会报错。因为没有进行环境变量的设置。

这样配置SVN的结果是,服务端机器每次重启的时候都必须手动输入前面提到的命令来启动SVN服务器。这样极为不便,而且启动之后命令窗口不能关闭,让人难以忍受。最好的办法是把SVN服务注册为系统服务。命令如下:

sc create svnservice binPath= "/"C:/Program Files/Subversion/bin/svnserve.exe/" --service -r E:/svnServer" start= auto   

 注意,上述命令均在一行中。sc.exe是Windows 2000以后系统自带的一个工具,2000下没有,可以从XP上拷过来。svnservice为服务名称,后面的参数格式有严格要求,等号前面没有空格而后面有。binPath本身带有多个参数,因此用引号括起来,而由于路径里面又有空格,因此又加上了一层引号。 --service和-r均为svnserve.exe的参数,前者要求它作为服务运行,后者指明了仓库的根路径(多仓库为仓库的父目录)。  带安装包的SVN会自动注册服务,这时我们可能需要修改-r参数(用于指明仓库路径),命令如下:

sc config svnservice binPath= "/"C:/Program Files/Subversion/bin/svnserve.exe/" --service -r E:/svnServer"

注册完后,通过运行命令sc start svnservice或者服务管理器(service.msc)启动服务。
接下来,我们就可以通过下面的命令来测试系统是否工作正常:

svn info svn ://localhost/projects

如果正确的显示出仓库的相关信息,那么就大功告成了,否则请检查服务的参数是否配置正确。如果安装了TortoiseSVN,则可以直接在浏览器中输入svn ://localhost/projects,这样会调出TortoiseSVN的Repos-Browser。

客户端:对客户端的操作不准备多说,网上随处可见。只是在checkout或commit ,update等操作的时候,在URL of repository(版本仓库地址)中输入格式为svn://服务器ip/文件夹名。如svn://245.38.100.245/projects。这里是建在服务器文件夹e:/svnServer/projects上。因为e:/svnServer是一个仓库的父目录,里面可新建、管理多个仓库。每个仓库可以设置不能的用户。不同仓库之间用户不可见。每个仓库可以管理多个项目(在仓库里新建多个文件夹,不同的项目存放不同的文件夹)。至于用户密码管理等等,这些网上都有很多说明。可以自己去找找。

最后附上SVN在linux下的注意事项和常用的命令

发生冲突时:
svn revert 扔掉自己的修改,使用仓库中的文件版本
如果保留自己的改动,丢掉其它人的改动,则:
cp number.txt.mine number.txt  
svn resolved number.txt
如果想用另外方式修改一下用svn resolved number.txt

svn log [-r 16:24] clock.java [|more]查看日志
svn blame number.txt 显示一个或多个文件的内容。对于每个文件的每一行,显示改动了那行的最后版本以及作出改动的人。

svn diff [-r 27:26] number.txt 查看(版本27与版本26之间)的差异
svn merge -r 27:26 number.txt  移除版本27中对number.txt的改动
svn merge -r 27:26 .  撤销版本27对当前目录的所有改动,点表示当前目录
svn status [--show-updates] 查看工作版本的状态(与服务器对照)

当锁住文件的用户对文件进行提交后,文件即被解锁

svn add number.txt , svn commit 添加文件

svn co 签出文件co即为checkout

svn info number.txt查看文件number.txt信息

svn move 移动文件或重命名

创建分支(发布或修正BUG):
svn mkdir -m "msg" svn://ip/sesame/branches 可以同时创建多个目录,用空格分开即可
svn copy -m "msg" svn://ip//sesame/trunks svn://ip/sesame/branches/RB-1.0
svn commit

访问发布分支,从分支签出即可。

签出到当前目录的rb1.0文件夹 svn co svn://ip/  rb1.0

如果仍有不明之处,可以参考:http://hi.baidu.com/wangzhe1945/blog/item/25fdc5b439665a718ad4b271.html

 

 

相关文章推荐

Ubuntu下SVN+Apache版本管理服务器配置

subversion是新一代的版本控制系统,版本管理是一个软件开发团队必不可少的工具。本文主要从实践角度总结了Ubuntu上安装svn服务器的过程。由于作者水平有限,其中纰漏之处还望网友不吝赐教! ...

Windows7(32位)下SVN进行版本控制和项目管理的安装配置和使用方法简述

在这里,我把SVN的整个安装过程及遇到的问题和相应的解决方案做一下总结: 1.下载svn的客户端和服务器端。我用的分别是TortoiseSVN-1.7.7.22907-win32-svn-1.7.5....

自己搭建SVN服务器和创建版本库-(三)windows上svn服务器发布公网的配置

windows上svn服务器发布公网的配置 分类: svn 2013-10-19 01:15 749人阅读 评论(0) 收藏 举报      继上两篇文章《windo...

详细介绍Windows下SVN服务器的配置

  • 2009年11月18日 23:38
  • 191KB
  • 下载

Windows基于Apache的svn服务器配置

  • 2011年09月11日 09:46
  • 994KB
  • 下载

windows下安装php、apache、mysql,并使得外网可访问内网的机器,搭建svn服务器提供版本控制

完成这些设置,花了好些时间,包括从网上搜到很多帮助的信息。这里整理一下,以防以后忘记了。 一、搭建php开发环境     1.先安装mysql,我从mysql网站下的版本是my...

VS2008,VS2010,Windows下配置SVN服务器

  • 2011年09月02日 08:27
  • 14.13MB
  • 下载

svn服务器 版本管理工具

  • 2014年06月02日 10:54
  • 4.59MB
  • 下载

windows下安装php、apache、mysql,并使得外网可访问内网的机器,搭建svn服务器提供版本控制

http://blog.chinaunix.net/uid-21702630-id-3091944.html 完成这些设置,花了好些时间,包括从网上搜到很多帮助的信息。这里整理一下,以防...

SVN版本管理完整版(服务器端)

  • 2009年03月05日 10:35
  • 6.02MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:windows下SVN版本管理服务器配置
举报原因:
原因补充:

(最多只允许输入30个字)