1. 程式人生 > >Ubuntu 14.04下SVN伺服器server的搭建和客戶端的簡單操作

Ubuntu 14.04下SVN伺服器server的搭建和客戶端的簡單操作

參考:Ubuntu 14.04下搭建SVN伺服器(SVN Server)

一:搭建環境 檢視Ubuntu系統的版本資訊:可用cat /proc/version命令、uname -a命令與sb_release -a命令。 Ubuntu:14.04 64位 SVN:通過apt-get 安裝   二:搭建步驟 1.解除安裝svn 利用以下命令檢視自己的系統是否已經安裝了svn:

上面顯示為已安裝,可以使用以下命令進行解除安裝:

sudo apt-get remove --purge subversion

(–purge 選項表示徹底刪除改軟體和相關檔案)

2.安裝svn 安裝前建議更新一下,再進行安裝: sudo apt-get update sudo apt-get install subversion 可以驗證一下,通過如下命令: svn help                    //--svn幫助 svn --version            //--svn版本 svnserve --version  //--svn server版本

3.建立SVN版本庫 a:建立專案目錄和svn倉庫: sudo mkdir  /home/svn sudo mkdir  /home/svn/myproject sudo svnadmin create /home/svn/myproject 執行命令後,會在myproject下生成以下檔案:
對db進行許可權設定: sudo chmod -R 777 db 注:如果不執行上述命令,在客戶端執行提交操作時會報如下錯誤:不能開啟檔案“/home/svn/myproject/db/txn-current-lock”:許可權不夠。 這是因為我們用的都是sudo許可權做的操作,預設只有root使用者對資料夾才有寫許可權,因為root的umask是0022,別的使用者沒有寫許可權。

b:設定訪問許可權:

修改conf資料夾下的三個檔案:svnserve.conf、passwd和authz。

cd conf/

sudo gedit svnserve.conf


注:所有的行都必須頂格,否則報錯。

c:新增訪問使用者:

sudo gedit passwd



d:設定使用者許可權:

sudo gedit authz


對以上進行解釋: admin = wang //使用者王屬於admin許可權組 @admin = rw //admin許可權組的許可權是讀和寫 * = r 所有的組都具有讀許可權

e. 通過以上步驟可以在/home/svn目錄下建立多個倉庫(repository)。
 

三:測試SVN伺服器 a. 啟動伺服器 sudo svnserve -d -r /home/svn [--listen-host 192.168.1.16] 注:-d:表示在後臺執行,-r:指定伺服器的根目錄 這樣訪問伺服器時就可以直接用”svn://伺服器ip/repository”來訪問了。如果伺服器有多ip的話–listen-host來指定監聽的ip地址。 我們可以在svn客戶端中通過svn://192.168.1.16來訪問svn伺服器。 可以用如下命令檢視svnserve是否已經執行: ps aux | grep svnserve

可以看到svn伺服器已經在後臺運行了。

值得注意的是,這裡是用sudo 啟動的, 因為之前的svn目錄及tone_src目錄我都是在sudo下建立的。目錄的所屬許可權都是root,如果以“svnserve -d -r /home/svn/”的方式啟動也是可以的的的方式啟動也是可以的,但是當客戶段提交檔案的時候,會出問題,因為此時的svnserve 服務對svn版本庫目錄沒有寫的許可權。


b. 停止伺服器 sudo killall svnserve ps aux | grep svnserve

可以看到svn伺服器已經關了。

四、客戶端
a、安裝
    推薦使用RabbitVCS,類似於Windows下的TortoiseSVN。
1.  sudo add-apt-repository ppa:rabbitvcs/ppa
2.  sudo apt-get update
3.  sudo apt-get install rabbitvcs-nautilus3
4. 在terminal中執行命令nautilus -q重啟Nautilus就可以使用rabbitvcs了

b、簡單使用
1. 開啟一個資料夾,在空白處右鍵 --> RabbitVCS SVN --> 檢出(Checkout)...


2. 在彈出的對話方塊的URL中填入svn伺服器的地址,由於這裡是連線到本機上的伺服器,所以直接填了伺服器的路徑。如是遠端連線,則需填寫svn伺服器所在主機的IP地址。


點選確定後,就自動生成了myproject的資料夾。
 
開啟myproject資料夾,按Ctrl+H顯示隱藏的檔案,可以看到有個.svn的資料夾。


3. 新增、提交檔案
在myproject資料夾下新建main.cpp,這時檔案上是個問號,如1所示;在空白處右鍵 --> RabbitVCS SVN --> 新增,將檔案新增後問號變成了加號,如2所示。

在空白處右鍵 --> 提交,加號變成了鉤子,如3所示,表示已經提交成功。
如果提交時出現如下錯誤:

執行一下清理即可。