您的位置:首页 > 其它

ubuntu 安装SVN版本控制器使用

2017-05-04 17:39 537 查看
1安装

  # sudo apt-get install subversion

2创建版本库

# sudomkdir /home/svn  
  # sudo svnadmin create /home/svn/repos

开启权限

chmod -R 777 /home/svn

chmod -R 777 /home /svn/repos

 

3编辑

进入#cd /home/svn/repos/ 可以看到conf  db  format 
hooks locks  README.txt四个目录

进入#cd conf/ 

# sudo vim svnserve.conf  #将以下参数去掉注释 

 [general] 
  anon-access = none    #匿名访问权限,默认read,none为不允许访问 
  auth-access = write  #认证用户权限  
  password-db = passwd  #用户信息存放文件,默认在版本库/conf下面,也可以绝对路径指定文件位置 
  authz-db = authz

# sudo vim passwd  #格式是用户名=密码,采用明文密码 

 [users] 
  xiaoming = 123 
  zhangsan = 123 
  lisi = 123

# sudo vim authz  这里这是用户时要特别小心

user = xiaoming

admin = zhangsan,lisi

[repos:/]

@admin = rw

 

 

启动sudo svnserve -d -r /home/svn

 #查看是否启动成功,可看的监听3690端口
  # sudo netstat -antp |grep svnserve
  tcp    0      00.0.0.0:3690    0.0.0.0:*      LISTEN   28967/svnserve 

 

编辑时在启动时

关掉线程  sudo killall  svnserve

启动  sudo svnserve -d -r/home/svn

 

Svn 访问

 #访问repos版本库地址
  svn://192.168.1.100/repos
  # 访问repos/media目录地址
  svn://192.168.1.100/repos/media

常见错误 在点击显示日志时 服务器连接错误  修改

 sudo vim svnserve.conf

   anon-access = none

 

这是最坑比的一部  一定要操作  不然不会同步代码  否则错都不不知道错在哪里

应该可行  待多次尝试

三、实现svn更新自动同步到web目录:

1、在web目录中checkout版本库

这一步算是比较关键的一步了,当时我搭建的时候试了无数次,就是缺少了这一步。把刚才checkout的版本库删掉,我们来一次比较正式的checkout:
svn co svn://localhost/project /home/www --username lsgoweb1(SVN账号) --lsgoweb1(SVN密码)
1
1

进入/var/svn/project/hooks下,建立post-commit文件:
cd /var/svn/project/hooks
vim post-commit

//在该文件里添加如下代码,保存
#!/bin/sh
#设定环境变量,如果没有设定可能会出现update报错
#设定语言,根据系统语言设置,如果是GBK就设置为 LANG=zh_CN.GBK
export LANG=en_US.utf8
SVN_PATH=/usr/bin/svn   //这里不用改
WEB_PATH=/home/www  //web目录,如果你的不同,可以改
//这里的用户随便一个就好
$SVN_PATH update $WEB_PATH --username 'lsgoweb1' --password 'lsgoweb1' --no-auth-cache
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12

保存退出。

修改post-commit用户为www目录用户
chown apache:apache post-commit     //我的 /home/www 的用户组和所有者都是apache
1
1

给post-commit 执行权限:
chmod 755 post-commit

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: