Linux下安裝SVN,倉庫創建,用戶權限管理


1.SVN安裝

  Ubuntu系統下安裝:sudo apt-get install subversion

  源碼安裝:1.下載:archive.apache.org/dist/subversion   

                2.解壓:tar xvf   subversion-0.19.1.tar.gz

         3.移動:sudo mv  subversion-0.19.1   /usr/svn

                            4.進入:/usr/svn,配置:./configure   --prefix=/usr/svn

        5.編譯:make

        6.安裝:make install

        7.設置環境變量:vi    /etc/profile   加入:export PATH=/usr/svn/bin:$PATH

        8.測試:svn    -h

可能依賴的安裝包:

  gcc(gcc/c++.x86_64)

  apr(apr-devel.x86_64)

  apr-util(apr-util-devel.x86_64)

  sqlite(sqlite-devel.x86_64)

  zlib(zlib-devel.x86_64)

編譯,出現錯誤

 

make[2]: Entering directory `/usr/svn/apr/network_io/unix'
make[3]: Entering directory `/usr/svn/apr/network_io/unix'
/bin/bash /usr/svn/apr/libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -D_REENTRANT -D_GNU_SOURCE -I../../include -I../../include/arch/unix -I../../include/arch/unix -c sockopt.c && touch sockopt.lo
sockopt.c: In function 'apr_socket_opt_set':
sockopt.c:242:27: error: 'SCTP_NODELAY' undeclared (first use in this function)
optname = SCTP_NODELAY;
^
sockopt.c:242:27: note: each undeclared identifier is reported only once for each function it appears in
make[3]: *** [sockopt.lo] Error 1
make[3]: Leaving directory `/usr/svn/apr/network_io/unix'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/svn/apr/network_io/unix'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/svn/apr'
make: *** [external-all] Error 1

 

 

2.SVN倉庫的創建與配置

   1.建立版本庫目錄:mkdir -p /usr/svn/svndata

   2.建立版本庫:svnadmin create /usr/svndata/repo1

    執行該命令后自動在repos目錄下添加必須的配置文件

      conf db format hooks locks README.txt

      conf中的四個配置文件:authz  hooks-env.tmpl  passwd  svnserve.conf

       svnserve.conf  #svn版本庫配置文件

       passwd     #svn用戶配置

       authz      #權限配置

       hooks-env.tmpl  #環境變量配置實例

    修改版本庫配置文件:

        vi svnserve.conf配置如下:

        [general]

        anon-access = none    #使非授權用戶無法訪問

        auth-access = write    #使授權用戶有寫權限

        password-db = passwd  #指明密碼文件路徑

        authz-db = authz     #訪問控制文件

    配置用戶: vi  passwd 配置說明如下:

        [users]

         user1 = 123    #用戶名 = 密碼

         user2 = 123    #用戶名 = 密碼

    配置權限:vi authz 常用配置說明如下:

        [group]

        group1 = user1,user2  #組中用戶與passwd中對應

        [repo1:/]

        user1 = rw       #單用戶

        @group1 = rw     #@表示組

        *=r          #表示所有用戶

        倉庫下目錄配置

        [repo1:/folder1]    #倉庫下的folder1目錄,權限配置與上面相同

  啟動服務:svnserve -d  -r   /usr/svn/svndata   (注:服務啟動的路徑為倉庫路徑或者倉庫上級路徑都可以)

  訪問版本庫:svn://ip/repo1

   對版本庫進行檢出操作(下載):svn checkout svn://ip/repo1  --username=user01

  查看文件狀態:svn status

  添加文件:svn add file

  提交:commit -m “注釋”

 

3.多項目多倉庫管理

  創建公共配置文件,可以移動上例中的passwd,authz到svndata中

  修改倉庫配置文件svnserve.conf將用戶與權限配置指向公共配置

  配置權限加入多倉庫配置

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM