首页 > 代码库 > Linux安装SVN
Linux安装SVN
yum -y install subversion mod_dav_svn
mkdir /data/svn
svnadmin create /data/svn/test \\新建test仓库
svn import /data/svn/test/ file:///data/svn/test -message \\初始化test目录
vim /data/svn/test/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
vim /data/svn/test/conf/passwd
添加svn用户,如:
test = test@123
test1 = 123qwe \\username = password
vim /data/svn/test/conf/authz
[groups]
admin = test \\groupname = test,test1多个用户以逗号隔开
[test:/] \\test为svn名称 冒号后面的/代表根目录下所有
@admin = rw \\引用上面定义的组,需要在前面加@,后面为权限
test1 = rw \\如是用户 直接输入即可,后面为权限
svnserve -d -r /data/svn/ \\启动svn
vim /etc/httpd/httpd.conf
添加:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
\\底端加入
<VirtualHost *:80>
DocumentRoot /data/svn
ErrorLog logs/svn_error.log
CustomLog logs/svn_access.log common
<Directory "/data/svn/">
Options FollowSymLinks
AllowOverride ALL
Order allow,deny
Allow from All
</Directory>
<Location /svn>
DAV svn
SVNParentPath /data/svn
AuthType Basic
AuthName "Test_SVN"
AuthUserFile /data/svn/test/conf/apache_passwd
AuthzSVNAccessFile /data/svn/test/conf/authz
Require valid-user
</Location>
</VirtualHost>
cd /usr/lib64/httpd/modules/
cp mod_dav_svn.so mod_authz_svn.so /usr/local/apache2/modules/
/usr/local/apache2/bin/htpasswd -dc /data/svn/test/conf/apache_passwd test
chown -R daemon.daemon /data/svn \\daemon为apache用户
chmod 755 /data/svn/test/conf/*
/usr/local/apache2/bin/apachectl restart
访问:http://IP/svn/test
后续如果需要在test根目录下新建其他目录,操作步骤:
mkdir /data/svn/test/dirname
svn import /data/svn/test/dirname/ file:///data/svn/test/dirname -message
vim /data/svn/test/conf/authz \\添加test1对该目录有读写权限
[test:/dirname]
test1 = rw
:wq!
即时生效
访问:http://IP/svn/test/dirname
svn常用操作
svn co svn://10.0.0.75/test \\checkout test目录至本地
svn up \\更新svn数据
svn update -r 5 文件或目录名 \\还原文件或目录至第5版本
cp ~/test ./ && svn add test/ && svn commit -m “备注” \\添加test目录
svn mkdir test && svn commit -m “备注” \\添加test目录
svn status \\查看当前目录下的所有文件或目录的状态,也可再后面跟某个文件或目录名,正常为不显示
[?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定]
svn status -v \\第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人
svn log \\查看当前目录下所有文件或目录日志,后面也可以指定具体文件或目录名称
svn info \\查看目录详细信息,后面也可以指定具体目录名称
svn diff -r 5:10 \\比较文件或目录第5版本和第10版本差异,后面也可以指定具体文件或目录名称
svn merge -r 5:10 filename \\合并5版本和10版本之间的差异到当前文件
svn list \\查看test版本库下的文件和目录
svn lock -m “备注”filename && svn unlock filename \\加锁/解锁(针对文件)
svn delete test && svn ci -m “备注” \\删除test目录
本文出自 “、矿泉水” 博客,请务必保留此出处http://guwenqiang.blog.51cto.com/5462040/1568963
Linux安装SVN