svn服務器搭建和使用

搭建svn服務器
vim


1、前期準備工做:服務器

  一、準備兩臺服務器,我這裏是192.168.4.123和192.168.4.124ide

  二、在兩臺服務器上分別安裝軟件: yum -y install  subversionsvn

  三、讓4.123作服務端,4.124作客戶端。測試


2、服務器的搭建spa

  一、在4.123上建立數據存儲路徑:mkdir /var/svn日誌

  二、svnadmin create    /var/svn/project1   //建立共享目錄code

   三、往共享目錄裏面導入一些文件(實際環境中就是源代碼)
ci

     svn import /usr/lib/systemd/system file:///var/svn/project1 -m "導入文件  文檔

     把/usr/lib/systemd/system目錄下大文件導入到/var/svn/project1

  四、如何查看project文件夾下的文件

     svn list file:///var/svn/project1         //本機查看文件

3、服務器配置

   一、cd /var/svn/project1/conf   進到配置文件的目錄,分別配置三個文件

     A、    svnserve.conf

           1九、anon-access = none      //匿名用戶不能訪問

           20、auth-access = write       //認證用戶能夠寫

           2七、password-db = passwd   //密碼文件

           3四、authz-db = authz              

    B、passwd   //建立用戶和密碼

                   [users]

                 zhangsan = 123456

                 lisi = 1234567                                              

    

   C、authz  //設置用戶對目錄的讀取權限

               [/]     //改目錄表明根目錄,也就是project1目錄

              zhangsan = rw

              lisi = rw

   二、啓動服務:選擇第一種服務

      svnserve -d -r /var/svn/project1/         //共享一個目錄

      systemctl start svnserve             //全部的共享目錄都發布出去

   三、客戶端驗證:4.124

     這裏主要用於測試,首先cd /tmp目錄下,下面的code就會建立在此目錄下

     svn   co  --username  zhangsan  --password  123456   svn://192.168.4.123/    code

        從服務端下載文件,用戶名和密碼,後面是服務端地址,code是本地目錄,自動建立


4、單機驗證:在4.124上用lisi這個賬號來鏈接服務器

    一、在code目錄下隨便找一個文件修改,zram.service

        svn    ci    -m    "zhushi"       //會自動上傳該動過的文件

             正在發送       zram.service

          傳輸文件數據.

          提交後的版本爲 2。

   二、若是其它人修改了文件,你能夠選擇下面的命令來更新,以達到和服務器上同樣的版本

           svn     update

     三、svn log svn://192.168.4.123  //可查看日誌信息,也就是查看什麼賬號在什麼時間作的事

   四、在客戶端新建文件或者目錄需注意的地方

      vim zzzz.sh (新建文件)   svn   add  zzzz.sh(需添加到svn裏面,不然沒法上傳到服務器)

      svn  mkdir abc(新建目錄)    svn   mv   a.sh   b.sh(更名)

      svn diff zzzz.sh          //文件對比,需指定文件名

      svn  cat   svn://192.168.4.123/zzzz.sh  //在服務器上查看文件

  五、數據還原,分下面幾種不一樣的狀況

       A、本地修改,已保存,但未提交:svn revert zram.service

       B、本地修改,提交:svn merge -r4:1 zram.service    從第四個版本還原到第一個版本

       C、本地修改,並提交了多個文件,若是一個一個文件還原版本的話,效率太慢

             svn -r2 co svn://192.168.4.123/ code2    //取出版本2的全部文件,,並存放在code2目錄下

 5、多人協同下如何解決版本衝突問題

    一、4.123用zhangsan登錄,4.124用lisi來登錄,導入文件到本地目錄code下

    二、兩人同時在操做文檔時,分下面幾種狀況來講明

      A、修改不一樣文件,

               svn update     //首先在修改以前,保持版本同樣

               兩我的更改不一樣的文件後分別提交,zhangsan提交後版本爲5,lisi提交後的版本爲6

               再更新一次,svn update ,這樣兩人獲得的就都是版本6

      B、修改相同文件的不一樣行,

              改完後上傳,誰先提交沒問題,後提交的提示「過時」,

             後提交的先update一下,而後再上傳一下,先提交的再update  

     C、修改相同文件的相同行(衝突,人爲解決)

              假如zhangsan先提交,上傳成功,

               lisi提交,會報錯,先更新update,會提高報錯,選p推遲,線下解決

             在lisi上刪除多於的版本,留下協商好的最終版本,而後上傳,

               而後在zhangsan上update一下

6、備份和恢復

      一、備份

        svnadmin dump /var/svn/project1/ > /root/my.bak   

     二、還原

           首先建立新的共享目錄:svnadmin create /var/svn/project2

        而後導入備份文件:svnadmin load /var/svn/project2/ < /root/my.bak

相關文章
相關標籤/搜索