怎么使用SVN管理代码

匿名 (未验证) 提交于 2019-12-03 00:21:02
这里我们只说在linux服务器上怎么进行管理。
前提:服务器环境和网站都已经部署好。
开始;
第一步:查看服务器是不是安装过svn;


rpm -qa subversion
如果有就卸载
yum remove subversion
第二步:安装
yum -y install subversion (都是用yum install,linux服务器比windows方便太多,不得不承认)
第三步:查看是否安装完成
svnserve --version
第四步:创建代码库(管理代码)
mkdir -p /www/svndemo
svnadmin create /www/svndemo/test
如果在test里面包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。
第五步:配置SVN代码库配置文件
进入conf文件夹
cd /www/svndata/test/conf
第六步:配置密码
vim passwd
修改passwd内容
[users]
# harry = harryssecret
# sally = sallyssecret
haixia=123456
打了#号是注释,这个是告诉你配置的格式,前面是账号,后面是密码,如果需要多个就在下一行再添加一个账号密码。
第七步:配置权限
目的是设置哪些用户可以访问哪些目录
vim authz
#设置[/]代表根目录下所有的资源
[/]
haixia=rw
如果里面有A,B,C三个文件夹,那么如果你让haixia用户只有a的权限,那就是
[/a]
haixia=rw,rw是读写权限,就是read和write权限。
第八步:配置svnserve.conf
追加以下内容:
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm = My First Repository
第九步:启动SVN
svnserve -d -r /www/svndemo
第十部:查看SVN进程
[root@localhost conf]# ps -ef|grep svn|grep -v grep

第十一步:检测SVN 端口
[root@localhost conf]# netstat -ln |grep 3690

第十二步:停止重启SVN
[root@localhost
[root@localhost password]# svnserve -d -r /www/svndata // 启动
第十三步:在本地电脑上下载一个SVN,连接svn。
客户端连接地址:svn://IP/test,(地址是IP对应你的仓库名)
用户名/密码: haixia/123456
*********重点*********
上面只是弄好了SVN的部署和仓库。
怎么提交到服务器,让服务器代码自动更新呢。
所以我们要设置钩子

第一步:在hooks目录里面新建一个post-commit文件。这个是钩子的脚本文件
添加脚本内容如下
export LANG=en_US.UTF-8


$SVN update $WEB --username haixia--password 123456


WEB=右边改成你实际的web目录
第二步:让post-commit有执行的权限
chmod a+x post-commit
第三步:把网站代码下载到本地,然后丢入SVN版本库里面(这期间不要更新网站任何代码),进入服务器的目录
cd/www/wwwroot



原理:本地代码提交到SVN版本库,版本库通过钩子更新网站代码。







标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!