Ubuntu12.04 LTS 下SVN服務器安裝
來自: http://blog.csdn.net//chenriwei2/article/details/37301347
由于項目開發有必要,需要用到SVN,所以嘗試使用。
實驗環境,由于我實驗室桌面有兩臺電腦,在 一個局域網上,一個局域網IP為192.168.0.9,另一個的局域網IP為192.168.0.27 ,0.9那臺電腦我裝的是Ubuntu12.04 LTS 系統,所以服務器就在這臺機子上搭建的。
=======================================
1. SVN 服務器的搭建
1. 安裝包:$ sudo apt-get install subversion
2. 添加SVN管理用戶和svnversion組
$ sudo adduser svnuser
$ sudo addgroup subversion
$ sudo addgroup svnuser subversion
(在我們遠程連接這個服務器的時候需要用到,并且在設置SVN權限時,同樣也需要用到)
3. 創建項目目錄
$ sudo mkdir /home/svn # 在/home目錄下創建svn文件夾
$ cd /home/svn
$ sudo mkdir proj #在/home/svn目錄下創建proj文件夾,用來存放項目
$ sudo chown -R root:subversion proj #將proj目錄的所有者改為root 下的subversion組,-R表示遞歸,也就是proj下的所有文件,
$ sudo chmod -R g+rws proj # 更改文件權限,-R或--recursive 遞歸處理,將指定目錄下的所有文件及子目錄一并處理。
4.創建SVN文件倉庫
$ sudo svnadmin create /home/svn/proj #注意,proj文件夾下必須為空
5. 修改文件倉庫訪問權限
$ sudo chmod 700 /home/svn/proj
6. 設置SVN服務器訪問權限
需要更改的文件的位置在/home/svn/proj/conf/文件夾下的authz、passwd、svnserve.conf文件中,
svnserve.conf:svn服務配置文件,該文件版本庫目錄的conf目錄下。
passwd:用戶名口令文件,該文件名在文件svnserve.conf中指定,缺省為同目錄下的。
authz:權限配置文件,該文件名也在文件svnserve.conf中指定,缺省為同目錄下的。
(1)設置svnserve.conf
更改其中的
anon-access = read #表示匿名接入可讀,默認給匿名用戶只讀的權限,但如果想拒絕匿 名用戶的訪問,只需把 read 改成 none 就能達到目的。
auth-access = write #表示權限用戶登錄可寫
password-db = password #這就是這指定用戶密碼的文件
authz-db = authz #這是指定用戶權限賬戶的文件
注意上面的配置文件,開頭都要頂格,也就是不要只要把#號給刪除了就行,
(2)設置passwd
在下面的
[users]
admin = admin
user = user
設置兩個用戶admin和user
(3)設置authz
[groups]
admin = admin
user = user
[/]
@admin=rw
*=r
admin屬于admin組,具有讀寫權限
user用戶屬于user組,具有讀權限。
7. 啟動SVN服務
$ sudo svnserve -d -r /home/svn
-d 表示以守護進程模式運行
-r 指定SVN根目錄
8. 設置SVN開機啟動
(1).創建執行腳本svn.sh(/root路徑下)
#!/bin/bash
svnserve -d -r /home/svn
(2).添加可執行權限
#chmod ug+x /root/svn.sh
(3).添加自動運行
#vim /etc/init.d/rc.local
在最后添加一行內容如下:
/root/svn.sh
(4).檢查
重啟服務器,使用ps -aux |grep svn看看svn進程是否啟動了。
2. 設置SSH訪問
1. 安裝服務器
sudo apt-get install openssh-server
安裝沒有問題的話,在windows下利用putty輸入IP地址就可以遠程登陸了。
2. 確認sshserver是否啟動了
ps -e | grep ssh
如果只有ssh-agent那ssh-server還沒有啟動,需要/etc/init.d/ssh start,如果看到sshd那說明ssh-server已經啟動了
ssh-server配置文件位于/ etc/ssh/sshd_config,在這里可以定義SSH的服務端口,默認端口是22,你可以自己定義成其他端口號,如222。然后重啟SSH服務:
sudo /etc/init.d/ssh resart
3. 到這里SSH設置就可以了,
3. Windows 下用TortoiseSVN 連接服務器
1. 下載Windows 端程序:http://tortoisesvn.net/downloads。
2. 執行下載回來的TortoiseSVN 安裝程序,就會進行TortoiseSVN 的安裝。正確安裝后,應該進行一次的重開機,以確保TortoiseSVN 的正確無誤。
3. 安裝成功后,如果可以在文件夾中右鍵能看到SVN相關的菜單,則表示,安裝成功。
4. 新建一個repository,一般選擇在一個空的文件夾中右鍵進行,注意文件夾必須為空。
5. 在新建的repository中右鍵設置check屬性,將服務器的地址和賬號寫入,就可以完成。