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版本的

 

 

 

待完善。。。。。。

相關文章
相關標籤/搜索