linux安裝SVN並設定SVN鉤子
linux安裝SVN並設定SVN鉤子
檢查已安裝版本
#檢查是否安裝了低版本的SVN
rpm -qa subversion#解除安裝舊版本SVN
yum r
ovesubversion
一.安裝SVN
yum -y install subversion驗證安裝
檢驗已經安裝的SVN版本資訊
svnserve --version程式碼庫建立
SVN軟體安裝完成後還需要建立SVN庫
mkdir
-p /www/svn/tata
svnadmin create /www/svn/tata
執行上面的命令後,自動建立tata庫,檢視/www/svn/tata 資料夾發現包含了conf, db,format,hooks, locks, README.txt等檔案,說明一個SVN庫已經建立。
配置程式碼庫
進入上面生成的資料夾conf下,進行配置
cd /www/svn/tata/conf
使用者密碼passwd配置
vim passwd修改passwd為以下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
tata=123456
許可權控制authz配置
vim authz目的是設定哪些使用者可以訪問哪些目錄,向authz檔案追加以下內容:
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
admin=tata,company
[/]
@admin=rw
服務svnserve.conf配置
vim svnserve.conf追加以下內容:
[general]
#匿名訪問的許可權,可以是read,write,none,預設為read
anon-access=none
#使授權使用者有寫許可權
auth-access=write
#密碼資料庫的路徑
password-db=passwd
#訪問控制檔案
authz-db=authz
#認證名稱空間,subversion會在認證提示裡顯示,並且作為憑證快取的關鍵字
realm = My First Repository
啟動SVN
svnserve -d -r /www/svn/tata檢視SVN程序
ps -ef|grep svn|grep -v grep檢測SVN 埠
netstat -ln |grep 3690停止重啟SVN
另外提供關閉svn的命令:killall svnserve開啟是svn的命令:svnserve -d -r /www/svn/tata
二.設定鉤子自動更新
實現SVN與WEB同步,可以CO一個出來,也可以直接用自動更新web目錄的方法,我們要在svn版本庫中配置鉤子來實現,就是建立一個post-commit的配置檔案,對其進行簡單的配置,簡簡單單的四步就可以實現Linux下SVN自動更新web目錄配置。
第一步:建立你的web程式目錄
mkdir
/
var
/www/html/tata
進入你建立的web程式目錄(svn checkout可以簡寫為co)
checkout svn:
//localhost/svntest //不重新命名資料夾,直接在當前目錄下檢出
checkout svn:
//localhost/svntest test //檢出檔案並且重新命名資料夾
第二步:在專案庫的 hooks/ 目錄下將post-commit.tmpl檔案複製一份並命名為 post-commit 檔案 【鉤子指令碼】
新增指令碼內容如下
export LANG=en_US.UTF-8
SVN=/usr/bin/svn #這裡配置的是svn安裝bin目錄下的svn檔案
WEB=/
var
/www/html/tata #要更新的目錄
$SVN
update
$WEB
--username cqh --password 123456
chown
-R www:www
$WEB
其中SVN=右邊改成 svn 命令位置
WEB=右邊改成你實際的web目錄
第三步:讓post-commit有執行的許可權
chmod
a+x post-commit
檢查已安裝版本
#檢查是否安裝了低版本的SVN
rpm -qa subversion#解除安裝舊版本SVN
yum r
ovesubversion
一.安裝SVN
yum -y install subversion驗證安裝
檢驗已經安裝的SVN版本資訊
svnserve --version程式碼庫建立
SVN軟體安裝完成後還需要建立SVN庫
mkdir
-p /www/svn/tata
svnadmin create /www/svn/tata
執行上面的命令後,自動建立tata庫,檢視/www/svn/tata 資料夾發現包含了conf, db,format,hooks, locks, README.txt等檔案,說明一個SVN庫已經建立。
配置程式碼庫
進入上面生成的資料夾conf下,進行配置
cd /www/svn/tata/conf
使用者密碼passwd配置
vim passwd修改passwd為以下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
tata=123456
許可權控制authz配置
vim authz目的是設定哪些使用者可以訪問哪些目錄,向authz檔案追加以下內容:
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
admin=tata,company
[/]
@admin=rw
服務svnserve.conf配置
vim svnserve.conf追加以下內容:
[general]
#匿名訪問的許可權,可以是read,write,none,預設為read
anon-access=none
#使授權使用者有寫許可權
auth-access=write
#密碼資料庫的路徑
password-db=passwd
#訪問控制檔案
authz-db=authz
#認證名稱空間,subversion會在認證提示裡顯示,並且作為憑證快取的關鍵字
realm = My First Repository
啟動SVN
svnserve -d -r /www/svn/tata檢視SVN程序
ps -ef|grep svn|grep -v grep檢測SVN 埠
netstat -ln |grep 3690停止重啟SVN
另外提供關閉svn的命令:killall svnserve開啟是svn的命令:svnserve -d -r /www/svn/tata
二.設定鉤子自動更新
實現SVN與WEB同步,可以CO一個出來,也可以直接用自動更新web目錄的方法,我們要在svn版本庫中配置鉤子來實現,就是建立一個post-commit的配置檔案,對其進行簡單的配置,簡簡單單的四步就可以實現Linux下SVN自動更新web目錄配置。
第一步:建立你的web程式目錄
mkdir
/
var
/www/html/tata
進入你建立的web程式目錄(svn checkout可以簡寫為co)
checkout svn:
//localhost/svntest //不重新命名資料夾,直接在當前目錄下檢出
checkout svn:
//localhost/svntest test //檢出檔案並且重新命名資料夾
第二步:在專案庫的 hooks/ 目錄下將post-commit.tmpl檔案複製一份並命名為 post-commit 檔案 【鉤子指令碼】
新增指令碼內容如下
export LANG=en_US.UTF-8
SVN=/usr/bin/svn #這裡配置的是svn安裝bin目錄下的svn檔案
WEB=/
var
/www/html/tata #要更新的目錄
$SVN
update
$WEB
--username cqh --password 123456
chown
-R www:www
$WEB
其中SVN=右邊改成 svn 命令位置
WEB=右邊改成你實際的web目錄
第三步:讓post-commit有執行的許可權
chmod
a+x post-commit