ubuntu下架設svn服務器及在windows創建svn+ssh客戶端:linux
一、安裝ssh
sudo apt-get install ssh
二、安裝subversion
sudo apt-get install subversion
三、爲參與項目開發的成員創建用戶賬戶
sudo adduser user1
四、創建名爲svn的用戶組
sudo addgroup svn
sudo addgroup user1 svn /*把user1加入組svn*/
注:這裏能夠根據不一樣的權限創建多個用戶組,把有相應權限的用戶放入相應的組中
五、創建項目文件存儲目錄
sudo mkdir /usr/local/svn
sudo mkdir /usr/local/svn/trunk
六、建立SVN文件倉庫
sudo svnadmin create /usr/local/svn/trunk
七、爲組成員賦予相應的權限
sudo chown -R root:svn /usr/local/svn/trunk
sudo chmod -R g+rws /usr/local/svn/trunk /*給svn組賦予讀寫權限,能夠根據須要更改相應權限*/
sudo chmod -R o-rwx /usr/local/svn/trunk /*刪除其餘無關人員的讀、寫、執行權限,默認狀況下可能其餘人有讀權限*/
注:有關權限修改的問題能夠查看相關linux命令
八、爲每一個成員生成密鑰對(以用戶user1爲例)
切換爲xiao用戶登陸:su user1 (提示輸入user1的密碼)
輸入:cd ~/
輸入:whoami,若是登陸成功則顯示xiao
執行:ssh-keygen -b 1024 -t dsa -N passphrase -f user1key
注:其中passphrase爲密鑰關鍵字,根據你的須要修改,xiaokey爲文件名;這裏使用的是DSA加密,能夠改用RSA加密,把其中的 「dsa」改成「rsa」就能夠了。
這時產生兩個文件:xiaokey和xiaokey.pub,前一個爲祕密密鑰後一個爲公開密鑰
而後,建立目錄/home/xiao/.ssh,把公鑰拷貝到/home/user1/.ssh目錄下:cp user1key.pub /home/user1/.ssh/authorized_keys
注:文件名必須爲authorized_keys
退出:exit
九、在windows下安裝svn客戶端,則需安裝「TortoiseSVN」、「Puttygen」和「Pageant」
9.一、下載:
http://sourceforge.net/projects/tortoisesvn
http://www.chiark.greenend.org.uk/~sgtatham/putty/
9.二、安裝:略
9.三、轉換私鑰格式:
9.3.一、運行Puttygen;
9.3.二、選擇菜單conversions->gennery,
9.3.三、選擇文件user1key,提示「Enter passphrase for key",輸入建立公私鑰對示使用的passphrase關鍵字,
9.3.四、而後選擇Parameters爲「SSH-2 DSA」(若是公私鑰是使用RSA生成,則選擇「SSH-2 RSA」),
9.3.五、點擊按鈕Save private key,
9.3.六、保存文件名爲user1key.ppk。
9.四、創建TortoiseSVN與Pageant的關聯,並將私鑰加入Pageant:
9.4.一、鼠標右鍵選擇TortoiseSVN->Settings->Network->SSH client,輸入:
C:/Program Files/TortoiseSVN/bin/TortoisePlink.exe;
9.4.二、鼠標右鍵選擇TortoiseSVN->RepoBrowser 輸入URL:
svn+ssh://user1@SvnServiceIP/usr/local/svn/trunk;
9.4.三、運行Pageant,右鍵點擊屏幕右下角的圖標-〉Add Key,將私鑰文件user1key.ppk加入。
這種配置我以爲在服務器之間操做比較安全,可是對於開發者(在window下開發着)使用起來就不是和方便了,咱們可一使用ssh的另外一個客戶端ssh sesure shell 比較好 ,能夠好好的管理。 shell