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...