SVN搭建以及自動更新

2021-08-14 18:23:32 字數 2575 閱讀 8614

svn是subversion的簡稱,是乙個開放源**的版本控制系統.。說得簡單一點svn就是用於多個人共同開發同乙個專案,共用資源的目的。

(一)yum安裝

1.安裝svn

yum install subversion

或者yum -y install subversion --不需要輸入y

mkdir-p/

data/

svncd /home/svn;

mkdir svnproject1

svnadmin create /home/svn/svnproject1

ls /svn/project/

目錄用途說明:

hooks目錄:

放置hook指令碼檔案的目錄

鉤子檔案

locks目錄:

用來放置subversion的db鎖檔案和db_logs鎖檔案的目錄,用來追蹤訪問檔案庫的客戶端

format檔案:

是乙個文字檔案,裡面只放了乙個整數,表示當前檔案庫配置的版本號

conf目錄:

是這個倉庫的配置檔案(倉庫的使用者訪問賬號、許可權等)vim

/home/

svn/project/conf/svnserve.conf

配置檔案格式,前邊不能有空格

[general]

anon-access = none

#匿名使用者不能訪問

auth-access = write

#授權使用者可以讀寫

password-db = passwd

#賬號相關配置

authz-db = authz

#訪問許可權

realm = my test repository         #提示資訊

儲存vi /svn/project/conf/passwd

[users]

#設定乙個zhangsan的使用者 密碼為 123456 【注意開頭不能有空格存在】

zhangsan= 123456

儲存注意:對使用者配置檔案的修改立即生效,不必重啟svn服務。 

5.       配置新使用者的授權檔案

vi /svn/project/conf/authz

[groups]

#建立乙個admin使用者組,包含使用者zhangsan和test

admin =zhangsan,test

[/]@admin

= rw

@user = r

* =儲存

格式說明:

版本庫目錄格式:

[《版本庫》:/專案/目錄] 

@《使用者組名》 = 《許可權》 

《使用者名稱》 = 《許可權》

/ 表示對根目錄(即/svn/project目錄)下的所有子目錄範圍設定許可權;

[/abc] 表示對資料庫中abc專案設定許可權;

建立乙個admin組,組成員包括xiaoran.shen和test1

建立乙個user組,成員只有test2;

admin組對目錄有讀寫許可權;

單個使用者test2有讀寫許可權;

*=表示除了上面設定的許可權使用者組以外,其他所有使用者都設定空許可權,空許可權表示禁止訪問本目錄,這很重要一定要加上。

注意:對許可權配置檔案的修改立即生效,不必重啟svn。 

6.       啟動svn服務

svnserve -d -r /

home/

svn/

svnproject1/

注意:不要使用系統提供的 /etc/init.d/svnserve start 來啟動,因為系統預設的啟動指令碼中沒有使用 –r /svn/project引數指定乙個資源。這種情況下啟動的svn服務,客戶端連線會提示「svn: no repository found in 'svn:' 」這樣的錯誤。

預設svn伺服器端口是3690。

殺死svn服務:

# ps -ef|grep svn

root      4642     1  0 16:08 ?        00:00:00 svnserve -d -r /svn/project/

root      4692  3676  0 16:13 pts/2    00:00:00 grep svn

# kill -9 4642

②、輸入賬號密碼

自動更新實現原理:在使用者每次提交檔案之後,自動執行鉤子檔案進行對svn目錄進行更新。

cd /home/svn/svnproject1

cd hooks  

#!/bin/sh

web=/var/www/html/mytest

export lang=en_us.utf-8

svn update $web --username zhangsan --password '123456'

儲存退出

chmod 777 ./post-commit

./post-commit

SVN搭建以及自動更新

svn搭建文件 一,svn說明 svn是subversion的簡稱,是乙個開放源 的版本控制系統,說得簡單一點svn就是用於多個人共同開發同乙個專案,公用資源的目的。二,svn搭建 一 yum安裝 1.安裝svn yum install subversion 或者yum y install subv...

python自動更新SVN

usr bin env python encoding utf 8 file svnupdate.py contact 512759438 qq.com author jian setting closeonend 0 不自動關閉對話方塊 closeonend 1 如果沒發生錯誤則自動關閉對話方塊 ...

懶人svn自動更新指令碼

需要更新的svn目錄多,人又想偷懶,不想乙個個點進去勤奮更新 1 首先你得安裝svn 2 多個目錄同時更新 3 需要考慮svn被鎖定需要清理的狀態 參考 參考 暫時沒想到命令列檢測svn是否需要清理的方法 我寫了兩個指令碼,乙個清理所有svn資料夾,乙個更新所有svn資料夾 echo off set...