CentOS 5.2下SVN伺服器的安裝與配置

來源:互聯網
上載者:User

安裝了一下SVN伺服器,本文沒有與Apache整合,過程如下: 

一,下載相關軟體:

[root@youxia201 test]# wget http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz

[root@youxia201 test]# wget http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz

 

二,安裝及配置:

1,解壓,要在同一個目錄下:

[root@youxia201 opt]# tar -zxvf subversion-1.6.1.tar.gz

[root@youxia201 opt]# tar -zxvf subversion-deps-1.6.1.tar.gz

 

2,編譯及安裝:

[root@youxia201 subversion-1.6.1]# ./configure --prefix=/usr/local/svn/

[root@youxia201 subversion-1.6.1]# make && make install

 

3,把svn相關的命令添加到環境變數中:

[root@youxia201 subversion-1.6.1]# echo "export PATH=$PATH:/usr/local/svn/bin/" >> /etc/profile

[root@youxia201 subversion-1.6.1]# source /etc/profile

 

三,建立測試倉庫:

1,建立SVN的根目錄,研發中心有多重專案部:

[root@youxia201 subversion-1.6.1]# mkdir -p /opt/svn/

 

2,建立一個測試倉庫:

[root@youxia201 subversion-1.6.1]# mkdir -p /opt/svn/svntest/

[root@youxia201 subversion-1.6.1]# svnadmin create /opt/svn/svntest/

 

3,修改設定檔:

[root@youxia201 svntest]# cd /opt/svn/svntest/conf/

[root@youxia201 conf]# vi svnserve.conf

[general]

anon-access = none

auth-access = write

password-db = passwd

authz-db = authz

 

[root@youxia201 conf]# vi authz

[svntest:/]

lipeng = rw

#給svntest倉庫添加一個名稱為李鵬的使用者,許可權為可寫。

 

[root@youxia201 conf]# vi passwd

lipeng = 123456

#由於是測試,密碼設定為123456

 

四,在Windows XP上安裝svn用戶端:

1,:

http://code.google.com/p/rails4scm/downloads/detail?name=tortoisewin32svn.msi

2,下載完成後,直接next安裝即可,安裝完成後需要重啟生效。

 

五,啟伺服器及測試:

1,啟SVN服務,並指定SVN的根目錄:

[root@youxia201 test]# svnserve -d -r /opt/svn/

 

2,服務已經正常起來:

[root@youxia201 test]# netstat -tunlp | grep svn

tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      8646/svnserve  

 

3,測試:

在案頭上建立一個名稱為svntest的目錄,在此目錄上點擊右鍵,選擇Checkout,在首行填寫svn伺服器的IP地址及倉庫名稱

 

輸入相應的使用者名稱稱及密碼後就可以使用了

 

如何同步到web目錄?

同步前需要先用checkout命令把當前項目簽出到web目錄

svn checkout svn://localhost/default (進入web目錄後再執行)

為了可以在修改完代碼提交到SVN伺服器後,WEB伺服器直接同步處理.需要配置SVN的鉤子,開啟hooks目錄,
可以看到有一個post-commit.tmpl檔案,這是一個模板檔案,
複製一份放在此目錄下,命名為post-commit
裡面原有的代碼全部注釋掉.這裡可以執行shell命令,每次commit完成後都會調用此檔案.
我的檔案內容為
#!/bin/sh
export LANG=zh_CN.GBK
/usr/local/svn/bin/svn update --username lida --password lida svn://localhost/default /www/web/
說明:
#!/bin/sh 說明是執行shell命令
export LANG=zh_CN.GBK 是為瞭解決svn post commit
中文亂碼,設定本地化編碼,因為我的系統為GBK編碼,SVN預設是UTF-8編碼,如果不設定將會出現錯誤,而執行不成功,錯誤標識為svn:
Can't convert string from native encoding to 'UTF-8'
/usr/local/svn/bin/svn update --username lida --password lida svn://localhost/default /www/web/ 執行更新操作
如果提示:post-commit hook failed (exit code 255) with no output賦予post-commit檔案可執行許可權
如果您的預設編碼就是UTF-8的,要上傳中文檔案,先將檔案另存新檔UTF-8格式在提交

文章轉載自:http://chlotte.blog.51cto.com/318402/382700

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.