一、搭建Subversion服务器
1、首先须要安装subversion这个软件:
sudoapt-getinstallsubversion
注:使用apt-get安装软件,ubuntu默认将软件下载到/etc/bash_completion.d/目录下,可使用sudoapt-getsourcepackagename下载源码包,也是下载到/etc/bash_completion.d/下。
2、在/home/nicky下构建一个repolinux服务器端口开放,名称为svnproject:
svnadmincreate/home/declan/svnproject
3、然后把/fun/theme目录下的内容导出到这个repo中,注意:导出的目录中文件名不能有英文,不然会出现错误,未能导出:
svnimport-m"projectName"/fun/themefile:///home/declan/svnproject
4、最后给这个repo构建一个svn自带的svnserve:
svnserve-d-r/home/declan/svnprojec
5、svn服务器默认使用3690端标语,svn要使用非默认端口,可以在svnserve前面加一个--listen-port21来更改svn使用的端标语,
操作如下:在命令提示符下输入:
svnserve-d-r/home/declan/svnproject--listen-port21
注:绿色加粗部份为SVN根目录
同时,还可以为同一个svn服务器上不同的svn项目设定不同的端标语,例如在declan目录下还建有另一个项目,名为svntestlinux服务器端口开放,这么可以启动
svnserve-d-r/home/declan/svntest--listen-port3690
则svntest项目窃听3690(svn默认)端标语,这样在使用netstat-ntlp进程查看时会查看到另个svnserver,而在顾客端,默认联接为3690端口,也可以在地址后加“:21”,即引号+端标语来设定访问端口。
以上命令要到svn安装目录下bin/下使用。
6、查看进程使用端标语及结束进程
使用命令sudonetstat-ntlplinux操作系统版本,可以查看到目前系统网路服务器的运行情况,之后使用sudokill-9pid,结束进程。
二、使用Subversion
1、你可以使用下边的命令来获得一个wc,如把它起名为projecout。
svncheckoutsvn://127.0.0.1/projecout
或则缩写为:
svncosvn://127.0.0.1/projecout
2、如果须要将更改从wc中发送到repo。
先到wc所在目录,之后使用下边的命令将更改发送到repo:
svncommit-m"note"
三、常用命令:
取出指定版本,如取出版本2:
svncheckout--revision2svn://....
显示递交日志信息:
svnlog
显示库中的最新信息:
svnlog--revisionHEAD
四、设定用户的验证和相应的权限。如今我们先构建一个叫project1的repo,之后转入project1中:svnadmincreated:svnprojectsproject1
cdd:svnprojectsproject1
project1目录下有一堆目录,步入conf并打开svnserve.conf这个文件,找到以下几行,并把上面的注解符号‘#’去掉,注意千万在每行的上面别留任何空格。
anon-access=read
auth-access=write
password-db=passwd
其中anon-access和auth-access分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,这挺好,我们不须要改它们。但若果想拒绝匿名用户的访问,只需把read改成none就能达到目的。password-db后的passwd则为定义用户名及密码的文件路径。这个文件默认跟snvserve.conf在同一个目录,下边瞧瞧如何配置passwd中的内容。
[user]
#harry=harryssecret
#sally=sallyssecret
harry和sally这两行分别定义了可以对repo进行写入的用户的用户名和密码。我们可以在下边加上自己的用户名和密码,例如
testsvn=tester
这样就给了用户testsvn往repo中写的权限。读档退出后,svn服务器即使即将可以运行了!把所有须要管理的项目都置于d:svnprojects这个目录下linux游戏,像正常那样用svnadmincreate命令构建repo,假如要checkoutrepo,则在命令行中输入:
svncheckoutsvn://192.168.0.1/project1
假如要commit刚需要输入刚刚设置好的用户名和密码:
svncommit-m"wearecommitingchanges!"--usernametestsvn--passwordtester