centOS 搭建SVN服务器,提交自动发布代码,详细教程,及注意事项

基础知识准备

    1. vi 编辑文件

    2. i 开始编辑

    3. esc 退出编辑 shift+: 命令模式 + wq 保存退出

    4. 开启svn服务  : svnserve -d -r /opt/svn   #后面是svn仓库地址 ;

    5. 关闭svn服务  : killall svnserve

    6. mkdir /opt/new  创建目录

    7. rm filename #删除文件  rm -rf filename #删除非空文件目录

    8. cd /  #到目录下  cd .. 退到上一级

    9. svn cleanup #svn 清理

    10. svn update 更新

    11. tar -zvxf filename 解压

    12. ctrl + d 退出 python


服务开机自启

    

vi /etc/rc.local

   1.  /usr/local/nginx/sbin/nginx  #增加nginx启动

   2.  /usr/bin/svnserve -d -r /opt/svn  #svn 自动开启,svn仓库目录


一、SVN服务篇 

    准备工作: 

    安转 subversion

yum install subversion 

#测试是否安转成功

svnserve --version 

#出现 Copyright 等信息就对了

  

     a. 创建仓库文件

mkdir /opt/svn

#在/opt下面创建一个svn目录

 

     b. 创建版本仓库 repos

svnadmin create /opt/svn/repos 

#创建了一个  repos 仓库目录

cd /opt/svn/repos 

#到仓库目录下,准备下一步

   

    c. checkout 仓库到 nginx html目录

svn checkout svn://ip/repos ./

#注意 ip 是你本机外网的IP地址 后面的 ./ 这个要加上,不然会生成 repos 这个目录

#在桌面端  checkout 时: svn://ip/repos

    

    1. vi passwd 文件 (用户管理)

[users] 

#下面添加用户

#username = password

user = 123456   

#创建用户user 密码 123456

   

    2.  vi authz 文件  (权限管理)

[/] 

#设置根目录下所有文件

user = rw 

#用户 user 具有读写权限 这一步应该在  vi passwd 后面 user 是添加的用户名

  

    3. vi svnserve.conf  (配置管理)

anon-access = none 
auth-access = write
password-db = /opt/svn/repos/conf/passwd #绝对地址
authz-db = /opt/svn/repos/conf/authz     #绝对地址
realm = /opt/svn/repos                   #绝对地址

    

    >创建钩子,自动更新到服务器目录

   

    4. cd /opt/svn/repos/hooks/

cp post-commit.tmpl post-commit 
vi  post-commit 

#在文件中写入
#!/bin/sh   

#这个是必须加的,指定执行文件

/usr/bin/svn update /usr/local/nginx/html --username user --password 123456 --no-auth-cache

#/usr/bin/svn   SVN 安装地址 查看方式 whereis svn 
#/user/local/nginx/html 项目在服务器的地址

#退出后注意修改权限

chmod +x /opt/svn/repos/hooks/post-commit

   

    5. 提交代码出现错误

post-commit hook failed (exit code 255) with no output.

#记得修改权限 ,访问 update 目录权限

chmod +x /opt/svn/repos/hooks/post-commit

#处理中文编码错误    post-commit 中添加

export LANG = en_US.UTF-8

    

    


你可能感兴趣的:(centos,nodejs,subversion)