1. 程式人生 > >linux-centos搭建svn版本鉤子自動更新版本庫

linux-centos搭建svn版本鉤子自動更新版本庫

一個公司的專案合作人員越多,對版本控制就非常的重要,在更改中難免會起衝突,而且有覆蓋錯誤的情況,所以,單間svn控制版本,可以方便大家進行按照的還原,

為了管理的流程化、規範話,搭建svn版本控制器。

說明:專案軟體:/usr/local/nginx/html/rabbit    創庫版本地址:/usr/local/nginx/svndatehouse/rabbit

--------------------------------安裝開始----------------------------

基本步驟:

1:安裝subversion

2:建立版本庫

3:配置使用者和許可權

4:鉤子配置

5:svn的常用命令

一:安裝subversion

          使用yum安裝subversion

          [[email protected] ~]# yum -y install subversion

二:建立版本庫

          [[email protected] ~] cd /usr/local/nginx/

          [[email protected] nginx] mkdir -p svndatehouse/rabbit

          [[email protected] nginx] svnadmin create svndatehouse/rabbit

三:版本庫的配置

        進入svndatehouse/cms版本庫目錄中的conf目錄,可以看到以下三個檔案

         [[email protected] nginx] cd svndatehouse/rabbit/conf
         [[email protected] conf] ls

            authz       passwd     svnserve.conf

            說明:svnserve.conf  #這是一個版本庫的配置檔案

                        authz                 #這是一個記錄組、許可權、身份驗證的檔案

                        passwd            #這是一個記錄使用者賬戶密碼的檔案

         1:配置svnserve.conf檔案,把下面的幾項簽名去掉,頂頭寫,前面不能有空格

          [[email protected] conf] vi svnserve.conf     

                      anon-access = none
                      auth-access = write
                      password-db = passwd
                      authz-db = authz

         2:配置passwd檔案

         [[email protected] conf] vi passwd

                    [user]

                    # harry = harryssecret
                    # sally = sallyssecret

                    rabbit=lmt818   #配置rabbit版本庫的     使用者名稱=密碼

         3:配置authz檔案

        [[email protected] conf] vi authz
           說明:在最後面一行加上以下的欄位;頂頭寫,前面不能有空格

               [/]            #配置訪問相對根目錄

               system=rw

      總結:svn版本庫配置完成,之後相關鉤子的配置以及啟動、自動開機設定

         啟動svn:       
         [[email protected] ~] svnserve -d -r /usr/local/nginx/svndatehouse/

         停止svn:

         [[email protected] ~] killall svnserve    或者    kill -9   程序號      

         設定開機啟動:

         [[email protected] ~]  vi /etc/rc.d/rc.local

                  /usr/bin/svnserve -d -r /usr/local/nginx/svndatehouse/      

         我們通過客戶端上傳的檔案提交到版本庫中,我從本地提交的時候就能直接把檔案提交到專案中去,需要用到鉤子檔案

四:鉤子自動更新

        首先對程式碼目錄進行checkout處理

         [[email protected] ~] cd /usr/local/nginx/html/

         [[email protected] html] svn co svn://192.168.3.110/rabbit/

                 Authentication realm:  21d46c22-96a8-465b-9d0b-58a1e04abdfd
                 Password for 'root':
                 Authentication realm:  21d46c22-96a8-465b-9d0b-58a1e04abdfd
                 Username: rabbit
                 Password for 'rabbit': lmt818
                 Checked out revision 0.
            通過密碼的驗證,配置鉤子檔案

          [[email protected] ~] cd /usr/local/nginx/svndatehouse/rabbit/hooks/     
          [[email protected] hooks]cp post-commit.tml post-commit

          [[email protected] hooks] vi post-commit

                  #在檔案中填入以下欄位

                    #!/bin/sh

                     export LANG=zh_CN.utf-8

                     REPOS="$1"                      REV="$2"

                    SVN=/usr/bin/svn

                    WEB=/usr/local/nginx/html/rabbit/

                    LOG=/data/home/auto_svn.log      # 存放日誌,請自行新建資料夾目錄

                    $SVN update $WEB --username rabbit --password lmt818 --non-interactive       #$SVN update $WEB --username 使用者名稱 --password 密碼 --non-interactive      
                    #....................................

                    if[$?==0]

                    then                   
                         echo  "$REPOS" "$REV" >> $LOG

                         echo `date` >> $LOG                          echo "##############################" >> $LOG                     fi             [[email protected] hooks] chmod 777 post-commit

            把目錄檔案和版本庫驚醒關聯,使專案目錄的檔案在版本庫中留下連結

            [[email protected] hooks] svn   import  -m "rabbit" /usr/local/nginx/html/rabbit/  file:///usr/local/nginx/svndatehouse/rabbit                  
            [[email protected] hooks] cd /usr/local/nginx/

            [[email protected] nginx]   svn list file:///usr/local/nginx/svndatehouse/rabbit   #列出版本庫檔案                
           

           說明:1:客戶端連結地址: svn://192.168.3.110/rabbit

                        2:連結客戶端以後,必須將專案目錄下的所有檔案,在進行關聯操作,這樣提交的時候,才能將所有的檔案及時的更新至相應專案中 ,關聯之後,如果檔案無法更新請刪除相應目錄下的檔案,在進行commit操作                
                  

五:svn常用命令

            1:備份

                 [[email protected] htdocs]# svnadmin dump /www/svndata/systeacher /mnt/systeacher.2012.06.02

            2:關閉伺服器

                  killall svnserve   或者 kill -9 id          
            3:檢視服務   埠號為:3690

                 ps aux | grep svnserve  或者   ps -ef|grep svn

            4:檢視版本庫ID

                   svnlook uuid /www/svndatehosuse/system/

            5:提示版本庫ID與期望不匹配  可以修改

                  svnadmin setuuid www/svndatehosuse/system  要修改的ID

            6:檢視埠號

                  netstat -tunl 或 netstat -antopl | grep svn

            7:獲取倉庫地址

                   svn checkout file:///www/svndata/systeacher/ /opt/lampp/htdocs

            8:新增檔案至svn伺服器

                   svn add 1.php

             9:檢視伺服器狀態

                   svn status

            10:提交資料

                    svn commit -m "this is test"

             11:更新專案

                    svn update

             12:返回指定的版本

                     svn update -r 2

             13:顯示所有檔案

                    svn list

             14:刪除檔案

                    svn delete 1.php

                    svn update

         svn checkout svn://192.168.3.29/system system/


        
        
        
        
        

相關推薦

linux-centos搭建svn版本鉤子自動更新版本

一個公司的專案合作人員越多,對版本控制就非常的重要,在更改中難免會起衝突,而且有覆蓋錯誤的情況,所以,單間svn控制版本,可以方便大家進行按照的還原, 為了管理的流程化、規範話,搭建svn版本控制器。 說明:專案軟體:/usr/local/nginx/html/rabbi

CentOS6.8 搭建SVN並用鉤子自動實現同步到web目錄

svn安裝subversion : yum install -y subversion檢查安裝是否成功: svn --version創建倉庫目錄: mkdir -p /home/svn/test創建項目:svnadmin create /home/svn/test檢查創建是否成功: (1)c

contos7編譯安裝git及搭建git遠端版本,及鉤子自動更新

一  安裝最新版git1.檢視yum源倉庫git資訊: yum info git初始化的阿里雲contos7的yum是1.8.3.1版本的;和官網不匹配;2.依賴庫安裝yum install curl-devel expat-devel gettext-devel opens

linux搭建svn版本控制軟件

handles kill modules pos epo log svn ret 改密   環境:     版本管理服務器:Linux version 2.6.18-308.el5     客戶端:win7   一、服務器端安裝步驟   1、安裝svn y

svn的倉庫設定鉤子自動更新

1、開啟svn的服務端,複製倉庫的地址。 2、在伺服器的目錄中checkout剛才複製的url,在伺服器目錄中是為了鉤子拉取後可以立即看到線上展示效果。 3、checkout成功後可以看到我的phpstudy根目錄中多了一個資料夾(記得要給伺服器根目錄的資料夾設定讀寫屬性)。

windows SVN提交後自動更新鉤子

post-commit.cmd @echo off SET REPOS=%1 SET USER=%2 SET SVN="D:\Program Files (x86)\VisualSVN Server\bin\svn.exe" SET DIR="D:\AppServ\www\airasia-t

linux搭建svn版本

svn配置 mount /dev/cdrom /media/cdrom 掛載光碟機 1.安裝svn伺服器端 yum install subversion 從映象下載安裝svn伺服器端 cd /usr/local/ //進入目錄,準備建立svn目錄 mkdir svn //建

centOS搭建SVN伺服器實現許可權控制及linux與windows客戶端的使用、排錯

目錄 1.在centOS上搭建svn_server 1.查詢是否已安裝軟體包及安裝軟體包  rpm -qa subversion #查詢是否安裝 yum -y install subversion

CentOS搭建SVN服務器

passwd centos 數據倉庫 con data mkdir 版本庫 控制文件 home 1、 yum install subversion 2、 創建倉庫 創建版本庫目錄 mkdir -p /home/svndata/java 創建版本庫 svnadmin cre

nvidia驅動自動更新版本後問題解決 -- failed to initialize nvml: driver/library version mismatch

logs sdn nbsp 必須 all 軟件更新 mis rar ice 因為必須關閉桌面窗口, 建議另外一臺電腦ssh連接操作 1. 卸載舊版本並關閉圖形界面 sudo apt-get remove --purge nvidia-\* sudo service

CentOS搭建SVN服務器,並通過Apache HTTP方式訪問

地址 borde 也有 新建 justify eat ima kill tar 摘要:本文主要講述了在centos 6.5環境下搭建svn服務器,可通過svn:\\IP方式訪問。同時由於部分公司內網端口限制,並不能訪問外網的svn服務器,所以特地結合了apache服務器,使

Centos搭建SVN服務器三步曲

啟動 htm log roo www. cat 信息 訪問控制 lis 原文地址:http://www.blogjava.net/nkjava/archive/2011/08/29/357502.html #yum install subversion 判斷是否安裝成功#

[記錄]CentOS搭建SVN服務器(主從同步)

啟動svn 帳號 執行 yum 文件 安裝 pass epo repo CentOS搭建SVN服務器(主從同步)1.安裝步驟如下: 1)安裝: #yum install subversion 2)查看安裝位置: #rpm -ql subversion 3)

Linux搭建SVN服務器

SVN基於Linux部署SVN服務器(1)yum安裝subversionyum install subversion(2)檢測安裝結果svnserve --version 顯示安裝結果,表示安裝成功了(3)創建代碼倉庫目錄mkdir /var/svn/projectname 新建一個目

svnCentos搭建svn服務器環境

writing wan you all lin read 版本庫 cnblogs body 1.需求描述在Centos系統中搭建svn服務器環境2.搭建過程2.1 yum安裝svn [root@localhost /]# yum install svn

Linux環境利用SVN+Maven+Tomcat自動釋出專案工程

目的:自動將工程編譯打包併發布到Tomcat伺服器 使用軟體:JDK7 + MAVEN + SVN + TOMCAT (請提前準備好以上軟體) 步驟: 1)配置JDK環境(詳細步驟可自己百度下,本人暫未準備,後續會更新... ...) 2)配置MAVEN環境(詳細請參考本人的另一

阿里雲CentOS搭建SVN伺服器及許可權管理

  linux(centos)下SVN伺服器如何搭建?說到SVN伺服器,想必大家都知道,可以是在LINUX下如何搭建SVN伺服器呢?那麼今天給大家分享一下linux(centos)搭建SVN伺服器的思路!    雖然在windows上搭建SVN很簡單,但是效能卻不高,

centos 搭建 svn伺服器 [防錯篇]

1.先把源換成epel源 centos# yum install epel-release centos# cd /etc/yum.repos.d centos# wget -O /etc/yum.repos.d/epel.repo http://mirror

vs .net專案自動更新版本

使用SVN的一個程式, 一般都會裝,無需再次下載和安裝了. 只需要在專案屬性-> 生成事件-> 後期生成事件命令 中加入 subwcrev.exe $(ProjectDir)Properties\ $(ProjectDir)Properties\AssemblyInfo.

Linux搭建SVN

鑑於在搭建時,參考網上很多資料,網上資料在有用的同時,也坑了很多人 本文的目的,也就是想讓後繼之人在搭建svn伺服器時不再犯錯,不再被網上漫天的坑爹作品所坑害,故此總結 /******開始*********/ 系統環境:Centos 6.5 第一步:通過yum命令安裝svnserve