前言:
由于最近跟学长一起合作完成一个小项目,然后我俩比较熟悉的版本控制是SVN,就考虑着在服务器上搭建一个SVN服务器。现在在这里给出简单的搭建过程。 预期目的: 1、仓库放在 /var/svn/ 目录下,并且仓库名为 project 2、创建用户组lsgogroup,该组下添加两个成员lsgoweb1、lsgoweb2,密码直接用用户名,两用户可以checkout代码和提交代码 3、利用SVN的钩子实现当仓库的代码更新的时候自动同步至我们的web目录,在这里,我的web目录在 /home/www/ 下 一、搭建svn环境并创建仓库: 1、安装Subversion: 2、检测是否安装成功(查看svn版本号) 3、创建版本库 至此,svn环境搭建成功。 二、创建用户组及用户: 1、 进入版本库中的配置目录conf,此目录有三个文件: svn服务综合配置文件(svnserve.conf)、 用户名口令文件(passwd)、权限配置文件(authz)。 2、修改权限配置文件:vim authz
3、配置用户名命令文件:vim passwd
4、配置SVN服务综合配置文件svnserve.conf 注意:所有以上的配置项都需要顶格,即前面不能预留空格,否则报错 5、启动svn服务: 如果提示: 证明现在svn已经被启动了,由于我们修改了配置文件,因此要重启svn服务 或者用 再运行 svnserve -d -r /var/svn,进行启动服务 6、测试服务器: 如果提示:Checked out revision 1. 表示checkout成功 我们添加新文件来测试是否提交成功 假如最后提示: 则表示我们svn服务器搭建成功!文件已经能够推送了。 7、本地拉取、推送 在本地首先要安装SVN吧,具体百度。。。
填写信息:
点击ok,提示输入用户名和密码 就填刚才我们创建的lsgoweb1或lsgoweb2,和对应的密码即可。 三、实现svn更新自动同步到web目录: 1、在web目录中checkout版本库 这一步算是比较关键的一步了,当时我搭建的时候试了无数次,就是缺少了这一步。把刚才checkout的版本库删掉,我们来一次比较正式的checkout: 进入/var/svn/project/hooks下,建立post-commit文件: 保存退出。 修改post-commit用户为www目录用户 给post-commit 执行权限: 麻蛋,终于写完了。。。。 本博客主要参考了: 1、centos7.0搭建SVN服务器 2、CentOS创建SVN 服务器,并且设置自动同步到WEB目录 感谢原作者。 (责任编辑:IT) |