在Ubuntu上搭建SVN的文章不少,可是都是拷貝來拷貝去的,我這裏從新整理一下: apache
首先推薦一篇參考文檔,鏈接以下: ubuntu
http://wiki.ubuntu.org.cn/SubVersion svn
如下是我整理後的步驟: spa
1.安裝必要的軟件包: 文檔
$ sudo apt-get install subversion get
$ sudo apt-get install libapache2-svn
it
2.建立一個SVN帳號和SVN組,並保證SVN帳號已經添加進了SVN組,個人SVN帳號是svnuser io
$ sudo adduser svnuser 添加SVN帳號 軟件
$ sudo addgroup subversion 添加SVN組 配置
$sudo usermod -G subversion -a svnuser 將svnuser添加到subversion組
$ cat /etc/group|grep subversion 確認是否添加成功,若是添加成功會顯示如下內容:
subversion:x:1004: svnuser
3.建立一個SVN倉庫
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir myproject
$sudo chmod -R g+rws myproject
$ sudo chown -R svnuser:subversion myproject
$ sudo svnadmin create /home/svn/myproject
$ sudo chown -R svnuser:subversion myproject
$sudo chmod -R g+rws myproject
這個地方必定要保證看到如下內容:
ls -l /home/svn/myproject/db/txn-current-lock
-rw-rwSr-- 1 svnuser subversion 0 2009-06-18 15:33 txn-current-lock
否則在SVN遞交時,會提示:
Can't open '/home/svn/myproject/db/txn-current-lock': Permission denied
至關於在myproject下,全部文件都要屬於subversion這個組的svnuser這個用戶
4.配置倉庫訪問權限,剛纔建立了一個名稱爲myproject的SVN倉庫,如今要設置它的訪問權限,
首先編輯myproject/conf/svnserve.conf,激活如下兩個選項:
password-db = password
authz-db = authz
而後編輯myproject/conf/authz,在[group]字段添加如下內容,將weike做爲管理者:
[groups]
admin = weike
[/]
@admin=rw
*=r
最後編輯myproject/conf/passwd文件,在[users]字段添加如下內容:
[users]
weike= 123
保存上述編輯文件。
5.打開svn服務:
$sudo svnserve -d -r /home/svn
這裏要注意,必定要用sudo,否則也會遇到如下提示;
Can't open '/home/svn/myproject/db/txn-current-lock': Permission denied
6.設定爲開機自動開啓服務:
編輯文件/etc/rc.local,在exit0前一行添加一下內容:
svnserve -d -T -r /home/svn
此處無需添加sudo