SVN上传文件自动更新到发布站点

源码安装svn, version 1.9.5sql

###########服务端源码安装#############vim

IP:192.168.1.13服务器

安装依赖;
              # yum -y install sconsapp

安装 aprtcp

     # tar -zxvf apr-1.5.2.tar.gzsvn

    # cd apr-1.5.2post

    # ./configure --prefix=/usr/local/apr && make && make install
安装apr-util(使用root)测试

    #tar -zxvf apr-util-1.5.4.tar.gz优化

    # cd apr-util-1.5.4spa

    # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make && make install

安装sqlite

     # tar -zxfv sqlite-autoconf-3130000.tar.gz

    # cd sqlite-autoconf-3130000

    # ./configure --prefix=/usr/local/sqlite && make && make install

安装zlib

    # tar xzfv zlib-1.2.8.tar.gz

    # cd zlib-1.2.8

    # ./configure --prefix=/usr/local/zlib && make && make install

安装subversion

    # tar -zxvf subversion-1.9.5.tar.gz

    # cd subversion-1.9.5

    # ./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-sqlite=/usr/local/sqlite --with-zlib=/usr/local/zlib                   # make && make install

设置系统环境变量

    #vi /etc/profile(ps:调整系统环境变量时,请先备份profile文件。)

    export PATH=/usr/local/svn/bin:$PATH (文件末尾添加)

    #source /etc/profile

测试版本 version

    #svnserve --version

建立svn库

# mkdir -p /application/svndata          建立svn帐号目录
# mkdir -p /application/svnpasswd     建立svn密码目录
# svnserve -d -r /application/svndata/   启动svn服务
# netstat -lntup
    tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 11880/svnserve
# ps -ef |grep svn
   root 11880 1 0 11:30 ? 00:00:00 svnserve -d -r /application/svndata/
   root 11885 11839 0 11:33 pts/0 00:00:00 grep svn
# svnadmin create /application/svndata/sadoc    建立svn版本库
    vim svnserve.conf            版本库的配置文件
    12行 anon-access = none     #取消匿名访问
    13行 auth-access = write       #受权用户有可写权限 
    20行 password-db = /application/svnpasswd/passwd    #指定用户配置文件,后面会用到
    27行 authz-db = /application/svnpasswd/authz      #指定权限配置文件,后面会用到
# diff svnserve.conf svnserve.conf0705          #对比一下二个文件的不一样
# cp passwd authz /application/svnpasswd/       #拷贝一份模板到密码目录下
# cd /application/svnpasswd
# chmod 700 *

编辑passwd文件,创建svn客户端用户以及密码,一行一个,这里创建了两个用户
# vim passwd
   [users]
   # harry = harryssecret
   # sally = sallyssecret
   admin = 123456
   xiao = xiao

编辑authz文件,指定SVN仓库目录,这[/]表明根目录,以及每一个用户的权限,这里均为可读可写
# vim authz
   [sadoc:/]
   admin = rw
   xiao =rw


# pkill svnserve 杀掉svn
# svnserve -d -r /application/svndata/
# svn --version
# yum remove subversion -y 卸载

命令行经常使用的命令:

# svn co svn://106.14.154.185/sadoc/ /root/yoki/ --username=admin --password=123456     从本地的svn手动上传到指定目录

# svn add 1 2 3                  添加 从服务器上传到win上
# svn ci -m "svn ci logs"    提交

# svn co svn://120.27.163.202/sadoc /data/wwwroot/ --username=admin --password=admin

               # svn import /data/wwwroot file:///application/svndata/sadoc -m "import"

#############启动钩子,自动上传站点目录###############

               #vim    /application/svndata/senke/hooks/post-commit     跳到最后一行添加如下几行

               REPOS="$1"

               REV="$2"
               #update content from svn
               export LANG=en_US.UTF-8
              SVN=/usr/local/svn/bin/svn
              $SVN update --username admin --password 123456   /data/wwwroot/

             :wq

# dos2unix post-commit 在本地写的脚本要用dos2unix 优化一下

 

################客服端安装###############
svn 客服端链接服务器的方式
svn://120.27.163.202/sadoc
用户名:admin
密码:admin

本地运行下输入--->  %APPDATA%\Subversion\auth  显示SVN版本的

 

 

 

待完善。。。。。。

相关文章
相关标签/搜索