SVN伺服器的配置和安裝

技術小胖子發表於2017-11-16

SVN伺服器的安裝與配置


安裝svn

yum install subversion      //從映象下載安裝svn伺服器端

cd /usr/local/              //進入目錄,準備建立svn目錄

mkdir svn                   //建立一個svn目錄

chmod -R 777 svn            //修改目錄許可權為777

svnadmin create /usr/local/svn/sunny  //建立一個svn版本倉庫sunny(sunny可以隨便起名字)

cd svn/sunny/conf               //進入sunny版本倉庫下的配置檔案目錄


下面要修改這個目錄下的三個配置檔案

(1)vi svnserve.conf    //配置版本庫資訊和使用者檔案和使用者密碼檔案的路徑、版本庫路徑


# anon-access = read

# auth-access = write

# password-db = passwd

//這四行,前面的#號和空格去掉(注意去掉#要頂格寫,不要留有多餘空格),變成

anon-access = none      //改成none

auth-access = write

password-db = passwd

realm = sunny           //改成自己的版本庫

儲存



(2)vi authz     //檔案,建立svn組和組使用者的許可權

[group]

sunny = gep,wce //建立一個sunny的組,並指定兩個使用者gep和wce


[/]             //制定根目錄下的許可權

@sunny = rw     //sunny組使用者許可權為讀寫

* = r           //其他使用者只有讀許可權

儲存退出


(3) vi passwd   //建立或修改使用者密碼

[users]

gep = 123456    //使用者名稱為gep的使用者的密碼為123456

wce = 123456    //。。。

儲存退出


啟動svn:

svnserve -d -r /usr/local/svn/       //這裡採用多版本庫的方式啟動  

svnserve -d -r /usr/local/svn/sunny  //這裡採用單版本庫的方式啟動


新增一行

然後要設定自啟動(開機啟動)

vi /etc/rc.local    //開啟自啟動檔案新增

/usr/bin/svnserve -d -r /usr/local/svn/


到此為止可以從服務端檢出檔案了.


svn命令:

netstat -tnl |grep :3690   檢視svn是否啟動

ps aux |grep `svn`         查詢所有svn啟動的程式

kill -9 2505               殺死2505這個查詢到的svn程式



svn checkout svn://172.19.5.2/sunny /data0/htdocs/blog  //檢出一份版本庫檔案到指定目錄

svn up                        //更新檔案


自動更新

在vi /usr/local/svn/sunny/hooks/post-commit中加入


#!/bin/sh

#設定一些變數

SVN=/usr/bin/svn

WEB=/home/testsvn #要更新的目錄

export LANG=en_US.UTF-8

$SVN update $WEB –username xxx –password xxx 



其中SVN=右邊改成 svn 命令位置 一般預設為/usr/bin/svn

    WEB=右邊改成你實際的web目錄

賦予可執行許可權

chmod 777 /usr/local/svn/sunny/hooks/post-commit

安裝完畢


=========================================================================


其他操作


#svn commit -m “註釋” xxx.php  //提交檔案

svn ci -m`aaa` test.php       //提交檔案


#svn add file               //新建檔案並新增到svn

svn add *.php               //(新增當前目錄下所有的php檔案)

svn delete test.php         //刪除test.php

svn log test.php            //檢視test檔案的log資訊

svn cleanup                 //清理當前目錄



svn switch –relocate svn://192.168.1.253  svn://172.19.10.250      //重新定位SVN版本庫地址



// SVN版本庫起動方式,現在SVN下面有 sunny、test 兩個版本庫

1:單版本庫起動    svnserve -d -r /usr/local/svn/sunny

2:多版本庫起動    svnserve -d -r /usr/local/svn

區別在於起動svn時候的命令中的啟動引數-r指定的目錄。


限制不同的使用者對不同的版本庫操作許可權,修改版本庫中的conf目錄下的 authz檔案


以配置 sunny 版本庫為例

vi authz

[groups]

teacher = sunny,sunny1

[sunny:/]             //指定版本庫跟目錄下的許可權

@teacher = rw     //teacher組使用者許可權為讀寫

* = r           //其他使用者只有讀許可權

儲存退出


vi passwd 設定組中使用者的賬號和密碼

[users]

sunny  = 123456

sunny1 = 123456

      本文轉自噼裡啪啦啦 51CTO部落格,原文連結:http://blog.51cto.com/pilipala/1902556,如需轉載請自行聯絡原作者


相關文章