當前位置:
首頁 > 最新 > linux下搭建svn伺服器

linux下搭建svn伺服器

SVN是Subversion的簡稱,是一個開放源代碼的版本控制系統,相較於RCS、CVS,它採用了分支管理系統,它的設計目標就是取代CVS。互聯網上很多版本控制服務已從CVS遷移到Subversion。說得簡單一點SVN就是用於多個人共同開發同一個項目,共用資源的目的。

第一步安裝SVN

安裝步驟如下:

1、yum install subversion

2、輸入rpm -ql subversion查看安裝位置,如下圖:

svn –help可以查看svn的使用方法

開發伺服器搭建好SVN伺服器,不可能只管理一個工程項目,如何做到不在一個項目中的開發人員不能訪問其它項目中的代碼,做好技術保密工作。

代碼倉庫有三個倉庫:A,B,C

A(B、C)

假設人員有3個人:,one,two,three

one,只能訪問A,B;

two,只能訪問B;

three,只能訪問C;

第二步、創建svn版本庫目錄

mkdir /var/svn

cd /var/svn

//創建三個代碼倉庫

svnadmin create A

執行命令後A下會生成下文件

進入conf目錄(該svn版本庫配置文件)

authz文件是許可權控制文件

passwd是帳號密碼文件

svnserve.conf SVN服務配置文件

第三步 編輯配置文件和賬戶文件

vim svnserver.conf中主要放開對以下的注釋,注意每行左邊沒有空格。

anon-access = none

auth-access = write

password-db = passwd

authz-db = authz

vim passwd,創建用戶及密碼

[users]

one = 123456

two = 123456

three = 123456

vim authz,許可權配置

### This file is an example authorization file for svnserve.

### Its format is identical to that of mod_authz_svn authorization

### files.

### As shown below each section defines authorizations for the path and

### (optional) repository specified by the section name.

### The authorizations follow. An authorization line can refer to:

### - a single user,

### - a group of users defined in a special [groups] section,

### - an alias defined in a special [aliases] section,

### - all authenticated users, using the "$authenticated" token,

### - only anonymous users, using the "$anonymous" token,

### - anyone, using the "*" wildcard.

###

### A match can be inverted by prefixing the rule with "~". Rules can

### grant read ("r") access, read-write ("rw") access, or no access

### ("").

[aliases]

# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

[groups]

[/]

# 表示admin有讀寫的許可權

admin=one

@admin=rw

# @admin 表示組許可權

# *=r表示其他人只能讀

*=r

group1=two

group2=three

[A:/B]

@admin = rw

@group1 = rw

* =

[A:/C]

@admin = rw

@group2 = rw

*=

把one 加入了admin組,這個組可以讀寫A,B,C目錄

把two 加入了group1組,只能讀寫A倉庫下面的B目錄,其他用戶不能見。

把three加入了group2組,只能讀寫A倉庫下面的C目錄,其他用戶不能見。

第四步 啟動svn服務

svnserve -d -r /var/svn

通過客戶訪問svn://172.16.5.200/A 使用one登錄,在根目錄下新建目錄B、C

所有配置就已經完成了。

默認svn伺服器埠是3690。

殺死svn服務:

ps -efgrep svn

kill -9 4642

註:如果是不同倉庫,可以將authz passwd 兩個許可權配置文件複製到 /var/svn/conf路徑下統一管理所有代碼倉庫,在每個倉庫svnserve.conf修改驗證和密碼文件目錄,realm = 指定倉庫名,就可以實現統一管理多個倉庫。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 樂幫電腦 的精彩文章:

TAG:樂幫電腦 |