Linux6.0下安装svn服务器<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
Subversion有两种运行方式,一种是基于Apache Http Server,另外一种是Subversion Standalone Server。下面我讲解的是基于Apache Http Server的Subversion,有以下几个优点:
A.能使用WebDAV协议。
B.能使用浏览器作为客户端工具浏览源码仓库。
C.可以很容易的支持到SSPI(Windows域认证)和LDAP(AD ),这些都是Apache本身就支持的。
D.能得到比较完善的Apache安全认证系统,比如SSL加密连接
1、安装软件
#yum install subversion mod_dav_svn httpd httpd-devel
查看是否安装了svn模块:
#cd /etc/httpd/modules
mod_authz_svn.so mod_dav_svn.so
2、配置svn
#vi /etc/httpd/conf.d/subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
# Limit write permission to list of valid users.
#<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /var/www/svn/passwd
AuthzSVNAccessFile /var/www/svn/authz
Require valid-user
#</LimitExcept>
</Location>
3、创建目录仓库
#mkdir /var/www/svn
#cd /var/www/svn
#svnadmin create oa oa:为目录名
#chown apache.apache /var/www/svn
以apache的属主用户为前提
#touch passwd 保存用户名和密码
#touch authz 保存用户权限
4、创建用户,输入两次密码
htpasswd -cm /var/www/svn/passwd admin admin:为用户名
htpasswd -d /var/www/svn/passwd liubl liubl:为用户名
5、设置用户权限
vi authz
[/]
admin = rw
* = r
6、重启apache
/etc/init.d/httpd restart
7、启动svn服务,默认端口3690
A.能使用WebDAV协议。
B.能使用浏览器作为客户端工具浏览源码仓库。
C.可以很容易的支持到SSPI(Windows域认证)和LDAP(AD ),这些都是Apache本身就支持的。
D.能得到比较完善的Apache安全认证系统,比如SSL加密连接
1、安装软件
#yum install subversion mod_dav_svn httpd httpd-devel
查看是否安装了svn模块:
#cd /etc/httpd/modules
mod_authz_svn.so mod_dav_svn.so
2、配置svn
#vi /etc/httpd/conf.d/subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
# Limit write permission to list of valid users.
#<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /var/www/svn/passwd
AuthzSVNAccessFile /var/www/svn/authz
Require valid-user
#</LimitExcept>
</Location>
3、创建目录仓库
#mkdir /var/www/svn
#cd /var/www/svn
#svnadmin create oa oa:为目录名
#chown apache.apache /var/www/svn
以apache的属主用户为前提
#touch passwd 保存用户名和密码
#touch authz 保存用户权限
4、创建用户,输入两次密码
htpasswd -cm /var/www/svn/passwd admin admin:为用户名
htpasswd -d /var/www/svn/passwd liubl liubl:为用户名
5、设置用户权限
vi authz
[/]
admin = rw
* = r
6、重启apache
/etc/init.d/httpd restart
7、启动svn服务,默认端口3690
# svnserve -d -r /var/www/svn/oa /var/www/oa:svn仓库目录位置
# netstat -na | grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
8、安装下载client端
8、安装下载client端
Ø 下载安装客户端【TortoiseSVN-1.7.11.23600-win32-svn-1.7.8.msi】
Ø 执行TortoiseSVN 安装程序,就会进行TortoiseSVN 的安装。正确安装后,应该进行一次的重开机,以确保TortoiseSVN 的正确无误。装完汉化包后,打开设置,选择语言为中文(简体)即可。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
Ø 安装成功后,在任何目录按下鼠标右键,应该可以看到如下:
Ø 从服务器下载文件
首先选择本地存储目录,新建一个空文件夹working。点选文件夹并右键,选择SVN检出,将会弹出如下窗口。其中,在版本库URL处输入服务器地址,检出目录默认为刚才新建文件夹。可以选择最新版本,也可以通过浏览日志来选择需要的某个版本。选定后按确定,出现如下窗口,显示服务器地址、新增文件列表以及版本号。
此时,working文件夹图标如下所示,其中包括了刚才下载的一个目录和6个文件;
Ø 向服务器提交文件
当完成某个文档test1.doc后,将它拷贝到working文件夹内某个目录下,它的图标出现一个蓝色问号。 此时点选文档,右键“TortoiseSVN->增加”,则图标中的问号会变为一个蓝色加号。再右键选择“SVN提交”,将弹出如下窗口:
在其中按照“时间-更新文档-提交者”的格式填写信息,最后点击确定进行提交。提交成功将会有如下窗口提示:
并且文件图标变为一个绿色对号。类似的,也可以将整个目录进行提交,已存在的文件将会被覆盖。
Ø 删除已提交的文件 / 目录
先在本机的svn目录working中选定该文件(夹),点击右键菜单选择“TortoiseSVN->删除”,然后进行提交,在变更列表中勾选已删除的文件,确定即可。
如果是并未提交的文件,直接物理删除即可。
Ø 对文件或目录进行重命名
对本地的文件夹进行了重命名操作后,点击TortoiseSVN右键菜单中的提交时,却显示没有需要提交的文件。这时我们要用到SVN的改名功能。点选文件(夹)右键选择“TortoiseSVN->改名”,在弹出窗口输出新名称,此时文件(夹)图标出现加号,右键进行提交即可。
Ø 更新至特定版本
有时我们需要回溯至特定的日期或是版本,这时就可以利用SVN的“更新至版本”的功能。在本机的SVN目录内按下鼠标右键,并且选择“TortoiseSVN->更新至版本”,将出现如下窗口:
点击显示日志,在下面窗口中选择所需版本并确定;
所有曾经做过的改动及其日期与对应的版本都会列在这个窗口上面,在想要的版本上面点击,然后按下确定。这个版本就会自动填入更新窗口中的版本字段中。再次确定,这个版本就会被取出来到硬盘中。如我们刚才删除的test1.doc就回来了。
转载于:https://blog.51cto.com/liubao0312/1141328