Apache Subversion(简称SVN,svn),是一个开放源代码的版本控制系统,相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上越来越多的控制服务从CVS转移到Subversion。
首先,从镜像下载安装svn服务器端:
- sudo apt-get install subversion
- cd /usr/local/
- mkdir svn
- chmod -R 777 svn
- svnadmin create /usr/local/svn/sunny
- cd sunny/conf
(1)vi svnserve.conf //配置版本库信息和用户文件和用户密码文件的路径、版本库路径
[
把
# anon-access = read
# auth-access = write
# password-db = passwd
//这四行,前面的#号和空格去掉,变成
anon-access = none //改成none
auth-access = write
password-db = passwd
realm = sunny //改成自己的版本库
保存
(2)vi authz //文件,创建svn组和组用户的权限
[group]
sunny = gep,wce //创建一个sunny的组,并制定两个用户gep和wce
[/] //制定根目录下的权限
@sunny = rw //sunny组用户权限为读写
* = r //其他用户只有读权限
保存退出
(3) vi passwd //创建或修改用户密码
[users]
gep = 123456 //用户名为gep的用户的密码为123456
wce = 123456 //。。。
保存退出
然后要设置自启动
- vi /etc/rc.local //<span style="font-family: sans-serif;">打开自启动文件</span>
- #!/bin/sh
- #
- # This script will be executed *after* all the other init scripts.
- # You can put your own initialization stuff in here if you don't
- # want to do the full Sys V style init stuff.
- touch /var/lock/subsys/local
- /usr/local/webserver/mysql/3306/mysql start
- ulimit -SHn 51200
- /usr/local/webserver/php/sbin/php-fpm start
- /usr/local/webserver/nginx/sbin/nginx
- svnserve -d -r /usr/local/svn/sunny
- #/usr/local/webserver/mysql/bin/mysql -u root -p -S /tmp/mysql.sock
svn命令:
- lsof -i :3690 查看svn是否启动
- ps aux |grep 'svn' 查找所有svn启动的进程
- kill -9 2505 杀死2505这个查找到的svn进程
- svnserve -d -r /usr/local/svn/sunny 启动svn(可以把这个放到/etc/local/rc.local文件中,实现开机自启动)
- svn up //更新文件
- #svn commit -m "注释" xxx.php //提交文件
- svn ci -m'aaa' test.php //提交文件
- #svn add file //新建文件并添加到svn
- svn add *.php //(添加当前目录下所有的php文件)
- svn delete test.php //删除test.php
- svn log test.php //查看test文件的log信息
- svn co svn://x.x.x.x ./ //检出一份版本库文件到当前目录
- svn switch --relocate svn://x.x.x.x svn://x.x.x.x //重新定位SVN版本库地址
svn hook
http://blog.chinaunix.net/uid-25525723-id-360264.html