轉自 http://xiayong.blog.51cto.com/6292420/1088790
Mac系統(tǒng)已經(jīng)自帶了svn凝赛,我們已經(jīng)不需要安裝svn服務器了藤违,簡單的幾步配置就可以開啟我們的svn服務器了藤韵。
1、打開terminal,可以使用如下命令確定我們的Mac OS系統(tǒng)確實已經(jīng)安裝了svnserve。
machost:~ xiayong$ svnserve --version
svnserve, version 1.6.18 (r1303927)
compiled Aug 4 2012, 19:46:53
Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.apache.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
- fs_fs : Module for working with a plain file (FSFS) repository.
2明未、創(chuàng)建倉庫
新建一個目錄
machost:~ xiayong$ sudo mkdir -p /data/svn/repositories/local
這個/data/svn/repositories/local目錄將用來作為我們的倉庫。
創(chuàng)建倉庫
machost:~ xiayong$ sudo svnadmin create /data/svn/repositories/local
倉庫創(chuàng)建成功后壹蔓,我們可以到倉庫下面看一下亚隅,svnadmin自動幫我生成了倉庫。
machost:~ xiayong$ cd /data/svn/repositories/local/
machost:local xiayong$ ll
total 16
-rw-r--r-- 1 root wheel 229 12 14 01:33 README.txt
drwxr-xr-x 5 root wheel 170 12 14 01:41 conf
drwxr-sr-x 16 root wheel 544 12 14 02:07 db
-r--r--r-- 1 root wheel 2 12 14 01:33 format
drwxr-xr-x 11 root wheel 374 12 14 01:33 hooks
drwxr-xr-x 4 root wheel 136 12 14 01:33 locks
3庶溶、配置
首先修改conf文件夾下的svnserve.conf文件煮纵,內(nèi)容如下
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
[sasl]
接下來修改conf下的passwd文件,在[users]后面加入一下內(nèi)容
administrator = admin@Svnserver
xiayong = xiayong
這里添加了兩個用戶偏螺,并分別設置了密碼
接下來修改conf下的authz文件行疏,設置權限
[groups]
admin = administrator
user = xiayong
[/]
@admin = rw
@user = r
[local:/]
@admin = rw
@user = r
簡單解釋一下這個配置,首先定義了兩個組套像,admin 和 user 酿联,admin這個組里面有administrator這個用戶(一個組里面可以有多個用戶,多個用戶用逗號隔開),user這個組里面有xiayong這個用戶贞让,當然不是一定要把用戶歸到某個組里面周崭, 我這么做是為了方便設置權限。然后設置了根目錄的權限喳张,要說明一下這個 / 目錄是指我的/data/svn/repositories/目錄续镇。然后設置了我的local這個倉庫的根目錄權限,r是讀销部,w是寫摸航。權限設置大家可以根據(jù)自己的情況設置,這里不多說舅桩,繼續(xù)往下酱虎。
最基本的配置到這里就結束了,我們可以啟動我們的svn服務器了
4擂涛、啟動SVN
machost:conf xiayong$ sudo svnserve -d -r /data/svn/repositories
Ok,svn默認使用3690端口读串,如果端口不沖突,svn服務應該就正常起來了撒妈,簡單的測試一下
machost:conf xiayong$ telnet localhost 3690
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops depth log-revprops partial-replay ) ) )
5爹土、創(chuàng)建默認目錄結構(可選)
接下來我們創(chuàng)建默認目錄結構。首先我們在本地把目錄結構建立好
machost:conf xiayong$ sudo mkdir -p /tmp/svntemp
machost:conf xiayong$ cd /tmp/svntemp/
machost:svntemp xiayong$ sudo mkdir tags trunk branches
machost:svntemp xiayong$
接下來將本地目錄結構倒入到我們的svn倉庫中
machost:svntemp xiayong$ sudo svn import -m 'init repo' /tmp/svntemp/ svn://localhost/local
Authentication realm: svn://localhost:3690 af662c40-23bf-43f4-93fa-8bf7eff40771
Password for 'root':
Authentication realm: svn://localhost:3690 af662c40-23bf-43f4-93fa-8bf7eff40771
Username: administrator
Password for 'administrator':
Adding /tmp/svntemp/trunk
Adding /tmp/svntemp/branches
Adding /tmp/svntemp/tags
Committed revision 1.
我是使用administrator這個用戶倒入的踩身,因為目前只有這個用戶才有權限胀茵。
現(xiàn)在我們的svn服務器已經(jīng)可以用了,可以使用svn://localhost/local來訪問我們的local這個倉庫挟阻,當然不要忘記了琼娘,我們剛才新添加了目錄,需要修改權限附鸽。
[local:/branches]
@user = rw
[local:/tags]
@user = r
[local:/trunk]
@user = rw
6脱拼、讓SVN服務隨操作系統(tǒng)啟動(可選)
查看svn內(nèi)存使用情況
svn在空閑時候才占了420k的內(nèi)存而已,所以我決定讓svn隨Mac系統(tǒng)一起啟動坷备,編輯/etc/rc.local文件熄浓,在這個文件中加入以下內(nèi)容(此文件在Mac系統(tǒng)中是沒有的,需要手動創(chuàng)建)
to run the svnserver on the automatically.
svnserve -d -r /data/svn/repositories
本文出自 “xiayong” 博客省撑,請務必保留此出處http://xiayong.blog.51cto.com/6292420/1088790