yum安裝配置svn

2021-08-31 07:05:44 字數 3978 閱讀 8361

1、什麼是svn

svn是非常優秀的版本管理工具,與cvs管理一樣,svn是乙個跨平台的開源的版本控制系統。這些資料放置在乙個**資料檔案庫中,這個檔案庫很像乙個普通的檔案伺服器或者ftp伺服器,但是不同的是,svn會記錄並備份每乙個檔案每一次的修改更新變動。

2、svn服務端執行模式與訪問方式

# yum install -y subversion
#建立svn版本庫資料目錄

# mkdir -p /data/svn/demo1/svndata #demo1專案資料目錄

# mkdir -p /data/svn/demo2/svndata #demo2專案資料目錄

#建立使用者密碼許可權目錄

# mkdir -p /data/svn/demo1/svnpasswd #demo1專案使用者密碼目錄

# mkdir -p /data/svn/demo1/svnpasswd #demo2專案使用者密碼目錄

#初始化建立版本庫,也可以理解為是乙個專案,demo1-code這個目錄不能用mkdir建立,svn有自己執行方式,會建立屬於svn自己的檔案。

# svnadmin create /data/svn/demo1/svndata/demo1-code

# svnadmin create /data/svn/demo2/svndata/demo2-code

#拷貝初始化生成的密碼檔案和認證檔案到自定義的目錄中

# cp /data/svn/demo1/svndata/demo1-code/conf/passwd /data/svn/demo1/svnpasswd

# cp /data/svn/demo1/svndata/demo1-code/conf/authz /data/svn/demo1/svnpasswd

# chmod 600 /data/svn/demo1/svnpasswd/passwd

# chmod 600 /data/svn/demo1/svnpasswd/authz

# cp /data/svn/demo2/svndata/demo2-code/conf/passwd /data/svn/demo2/svnpasswd

# cp /data/svn/demo2/svndata/demo2-code/conf/authz /data/svn/demo2/svnpasswd

# chmod 600 /data/svn/demo2/svnpasswd/passwd

# chmod 600 /data/svn/demo2/svnpasswd/authz

# cp /data/svn/demo1/svndata/demo1-code/conf/svnserve.conf /data/svn/demo1/svndata/demo1-code/conf/svnserve.conf.bak    #修改配置檔案先備份

# vim /data/svn/demo1/svndata/demo1-code/conf/svnserve.conf

12 anon-access = none #read改為none,禁止匿名訪問

13 auth-access = write #認證訪問

20 password-db = /data/svn/demo1/svnpasswd/passwd #指定密碼檔案目錄

27 authz-db = /data/svn/demo1/svnpasswd/authz #指定授權檔案目錄

# vim /data/svn/demo1/svnpasswd/passwd

[users]

demo1-admin = 123456 #使用者=密碼

demo1-guest = 123456

demo1-test = 123456

# vim /data/svn/demo1/svnpasswd/authz 

[groups]

group1 = demo1-guest,demo1-test #定義乙個組,名字可以隨意,指定該組中的成員,用逗號分隔

[/] #定義使用者針對demo1專案的許可權,表示demo1專案下所有內容允許誰可以有什麼許可權

@group1 = r #給某個組許可權,前面加@符號

demo1-admin = rw #給某個使用者許可權,使用者名稱 = 許可權

# svnserve -d -r /data/svn/demo1/svndata    #-d:後台啟動,-r:指定svn專案的根目錄
# svnserve -d -r /data/svn/
將檔案checkout到本地:

# svn checkout svn: /root/svn/demo1-code --username=demo1-admin --password=123456

#svn:是demo1專案的svn伺服器位址和根目錄

#/root/svn/demo1-code/是指linux端checkout時,生成檔案倉庫的位置,不加這個目錄的話,預設在執行命令的當前目錄

# svn co #簡寫

新增檔案至版本庫

# svn add file   #使用add新增檔案
提檔案到至版本庫

# svn commit -m "commit tet file"    #進行提交

# svn ci #簡寫

更新檔案

# svn update #後面沒有目錄,預設將當前目錄以及子目錄下的所有檔案更新到最新

# svn update -r 3 file #將版本庫中的file檔案還原到版本3

# svn update file(更新與版本庫同步。提交的時候提示過期是因為衝突,需要先update,修改檔案,然後清除svn resolved,最後再提交commit)

# svn up #簡寫

加鎖、解鎖

# svn lock -m "lock file" file    #給檔案加鎖

# svn unlock file #給檔案解鎖

檢視檔案狀態

# svn status file    #檔案狀態正常不顯示

m:內容被修改;c:發生衝突;a:預定加入到版本庫;k:被鎖定

# svn status -v file.txt #第一列保持相同,第二列顯示工作版本號,第三和第四列顯示最後一次修改的版本號和修改人

k 4 4 demo1-admin file.txt

#svn st #簡寫

刪除檔案

# svn delete file.txt 再 svn ci -m "delete file"    #推薦使用

# svn delete svn: -m "delete file"

檢視日誌

# svn log file.txt    #檢視file.txt檔案的所有修改記錄以及版本變化
檢視檔案詳細資訊

# svn info file.txt    #檢視檔案的詳細資訊
比較差異

# svn diff -r 10:9 file.txt     #比較file.txt檔案的10版本和9版本的差異

# svn di #簡寫

yum安裝配置

檢查是否有安裝配置yum所需的依賴包 root localhost rpm qa grep deltarpm 所需的三個依賴包 deltarpm 3.5 0.5.20090913git.el6.x86 64.rpm python deltarpm 3.5 0.5.20090913git.el6.x8...

svn安裝配置

vi svnserve.conf 注意 anon access應該設為none,禁止匿名訪問。截圖的時候這裡忘改了 將其中這5行前的注釋去掉,且前面不要留空格,以免出問題 1 可讀 2 授權使用者可寫 3 使用哪個檔案作為賬號檔案 4 使用哪個檔案作為許可權檔案 5 版本倉庫所在目錄 svnserv...

svn安裝配置

1.安裝subversion,不斷下一步即可。2.建立乙個根目錄,用來儲存所有svn工廠資訊。每個工廠repository對應乙個專案。我這裡在e svndata。3.啟動svn,使用如下的命令svnserve d r e svndata。其中 d選項指的是後台模式,但是非常遺憾的是,windows...