1.安装
yum install subversion
查看版本使用
svnserve --version
2.创建版本库
先要新建svn版本库存放的地方
mkdir /home/svn
创建版本库
svnadmin create /home/svn/test
新建svn版本库test,会生成test目录,test下会有文件生成,conf是一些配置文件
3.配置文件
我使用全局的authz和passwd文件
cp /home/svn/test/conf /home/svn
编辑/home/svn/test/conf下的svnserve.conf,
取消以下项目的注释
anon-access=none #无权限不可写
auth-access=write #有权限可写
password-db=passwd #密码验证使用的文件
authz-db=authz #权限使用的文件
realm=project#指定版本对应项目的目录
同时修改password-db=/home/svn/conf/passwd
authz-db=/home/svn/conf/authz
realm=/home/svn/test
authz是用户权限配置,修改home/svn/conf/authz
[groups]
manager = root
server = server,server1
#此处是对角色进行设置
#定义角色manager,server,等号后面是用户名
[/]
@manager=rw
@server=rw
#此处是对角色的权限进行配置
#这是对整个项目的权限,下面是对某个目录或某个项目的权限
password是用户权限配置,修改home/svn/conf/passwd
[user]
test=123456
4.启动
svnserve -d -r /home/svn
关闭
killall svnserve
使用:
本地新建文件夹
检出
svn checkout svn://*.*.*.*/test
添加
svn add 文件名
更新
svn update
提交
svn commit -m "first commit"
暂时只是简单的使用就这几个语句,其实和git类似
5.hook
服务器www下自动update代码,使用hook
cp /home/svnsrc/test/hooks/post-commit.tml /home/svnsrc/test/hooks/post-commit
vim /home/svnsrc/test/hooks/post-commit
添加
echo "Code update at `date "+%Y-%m-%d %H:%M"`" >> /home/svnsrc/poetnote/update_log
svn update --username **** --password **** /opt/www/poetnote >> /home/svnsrc/poetnote/update_log
完成后,chmod g+w post-commit