自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SVN服務(wù)器在SVNServer和Apache中搭建之技術(shù)分享

開發(fā) 項目管理
本文向大家介紹一下SVN服務(wù)方面的知識,主要包括用SVNServe搭建SVN服務(wù)器和在Apache下建立subversion服務(wù)器兩部分內(nèi)容。

本節(jié)接著上節(jié)和大家一起來學(xué)習(xí)一下SVN服務(wù)的問題,經(jīng)過一段時間對SVN的學(xué)習(xí)有了一些心得,于是和大家分享一下,看完本文SVN服務(wù)問題的介紹你肯定有不少收獲,希望本文能教會你更多東西。

用SVNServe搭建SVN服務(wù)器
我們要把svnserve運行起來,我將在例子中介紹具體的使用方法。
下面假設(shè)我在本機上運行svnserve,IP為192.168.0.1,這個svn服務(wù)器為局域網(wǎng)內(nèi)的電腦提供svn服務(wù)。我打算把svn服務(wù)器的訪問地址設(shè)為http://192.168.0.1/svnprojects/projectX,其中X為不同的多個項目。整個過程如下(以windows下為例):
首先確定repo在本機上的儲存的位置,比如我準(zhǔn)備把repo放在D:svnprojetcs下,那么在命令行運行svnserve-d-rd:svnprojects就可以了。其中-d參數(shù)讓svnserve運行在后臺,-r參數(shù)限定了repo在網(wǎng)絡(luò)上可以訪問的地址。這樣如果網(wǎng)絡(luò)上其它的計算機要checkout這個服務(wù)器,只需要輸入svncheckoutsvn://192.168.0.1/project1而repo在本機上實際的位置是d:svnprojectsproject1。同理,如果想checkoutproject2,則把上面的project1改成project2就可以了。到此,一個簡單的svn服務(wù)器就算是基本架設(shè)好了。但如果要正常使用,我們還需要設(shè)定用戶的驗證和相應(yīng)的權(quán)限。
現(xiàn)在我們先建立一個叫project1的repo,然后轉(zhuǎn)到project1中:
svnadmincreated:svnprojectsproject1
cdd:svnprojectsproject1
project1目錄下有一堆目錄,進入conf并打開svnserve.conf這個文件,找到以下幾行,并把前面的注解符號‘#’去掉,注意千萬在每行的前面別留任何空格。
anon-access=read
auth-access=write
password-db=passwd
其中anon-access和auth-access分別為匿名和有權(quán)限用戶的權(quán)限,默認給匿名用戶只讀的權(quán)限,這很好,我們不需要改它們。但如果想拒絕匿名用戶的訪問,只需把read改成none就能達到目的。password-db后的passwd則為定義用戶名及密碼的文件路徑。這個文件默認跟snvserve.conf在同一個目錄,下面看看怎么配置passwd中的內(nèi)容。
[user]
#harry=harryssecret
#sally=sallyssecret
harry和sally這兩行分別定義了可以對repo進行寫入的用戶的用戶名和密碼。我們可以在下面加上自己的用戶名和密碼,比如testsvn=tester
這樣就給了用戶testsvn往repo中寫的權(quán)限。存盤退出后,svn服務(wù)器就算正式可以運行了!把所有需要管理的項目都放在d:svnprojects這個目錄下,像正常那樣用svnadmincreate命令建立repo,如果要checkoutrepo,則在命令行中輸入:svncheckoutsvn://192.168.0.1/project1如果要commit剛需要輸入剛才設(shè)置好的用戶名和密碼:svncommit-m"wearecommitingchanges!"--usernametestsvn--passwordtester
給Windows用戶的建議
如果你打算在Windows系統(tǒng)上運行svnserve,只是簡單的在命令行輸入svnserve-d-rd:svnprojects不是個好方法,一是每次都這么干太麻煩,二是服務(wù)器啟動后為了保持它的運行,你必須讓命令提示符窗口一直懸在桌面上,影響美觀。最好是把svnserve作為系統(tǒng)的一個進程每次啟動自動運行:
D:>sccreatesvn
binpath="D:svnbinsvnserve.exe--service-rD:svnprojects"
displayname="SubversionServer"
depend=Tcpip
start=auto把當(dāng)中的路徑換成你的svn安裝目錄就可以了。
在Apache下建立SVN服務(wù)器
在Apache中部署Subversion實際上并不比用svnserve難多少,它的難點在于一般人沒有修改Apache配置的權(quán)限,如果你有相應(yīng)的修改權(quán)限,那么搭建一個svn服務(wù)器不是一件難事,我們來看看應(yīng)該怎么配置。
準(zhǔn)備工作
首先確定Apache正確安裝,mod_dav和mov_dav_svn這兩個模塊也被啟用,在Debian系的Linux上可以這么安裝:
sudoapt-getinstallapache2subversionlibapache2-svn
在Windows平臺上,可以下載一個XAMPP,ApacheMySQLPHP什么的就都有了。
確定mod_dav和mod_dav_svn被打開:a2enmoddavdav_svn
基本設(shè)置
SVN服務(wù)介紹時以上的準(zhǔn)備工作做完后,就正式開始了,還是拿part2的機器網(wǎng)絡(luò)環(huán)境,同樣的例子。
我準(zhǔn)備讓repo的網(wǎng)絡(luò)訪問地址成為http://192.168.0.1/svnprojects/projectX,
修改/etc/apache2/conf下的httpd.conf,加入如下代碼:
<Location/svnprojects>
DAVsvn
SVNParentPath/path/to/svnprojects
</Location>
更多詳細的<Location>命令用法請參見Apache手冊,下同。SVNParentPath命令用來把網(wǎng)絡(luò)訪問地址和repo的實際地址對應(yīng)起來。
這樣就設(shè)置完了,如果你把repo建立好了,現(xiàn)在就已經(jīng)可以checkout了,輸入:svncheckouthttp://192.168.0.1/svnprojects/project1設(shè)定用戶的權(quán)限和驗證
但這樣肯定是不夠的,因為還沒有設(shè)定相應(yīng)的用戶權(quán)限,現(xiàn)在不管誰都可以往repo里塞東西,為了更好的控制,我們還需要設(shè)定訪問權(quán)限,比如讓指定的用戶可以commit,其他的只能checkout。因為我們在Apache上,所以訪問權(quán)限的控制就可以直接借用Apache的,首先為你的用戶設(shè)定用戶名和密碼:
htpasswd-cmb/path/to/passwdfile/passwordsuser1test1這樣就把用戶名和密碼儲存在passwords中了,加密方式為MD5。如果需要添加新的用戶,htpasswd-mb/path/to/passwdfile/passwordsuser2test2以此類推。
然后回到我們在httpd.conf中添加的代碼,修改一下:
 

  1. <Location> 
  2. DAVsvn  
  3. SVNParentPath/path/to/svnprojects  
  4. AuthTypeBasic  
  5. AuthName"TestRepository"  
  6. AuthUserFile/path/to/passwdfile/passwords  
  7. <LimitExceptGETPROPFINDOPTIONREPORT> 
  8. Requirevalid-user  
  9. </LimitExcept> 
  10. </Location> 

在這段代碼的控制下,任何人都可以對repo進行checkout,但只有user1和user2才可以commit,<LimitExcept>的作用是控制HTTP請求,如果HTTP請求是GETPROPFINDOPTIONREPORT中的一種,則不需要去驗證用戶。
最后,你需要把repo所在的目錄和文件的所有權(quán)都改成系統(tǒng)中操作Apache的用戶,這樣在commit的時候才會被Apache認可。在Ubuntu中,這個用戶叫www-data:
sudochown-Rwww-data/path/to/repo如果你用其它系統(tǒng)或是用Windows,可以在Apache的配置文件中找到User這個命令來知道應(yīng)該把目錄的所有權(quán)交給誰。
以上就是一個初步的Subversion服務(wù)器的搭建,這一篇考慮到實際上用的人可能不多,要用的人估計肯定會自己配置,因此我寫的不夠細致,比如說沒有說到基于SSL的設(shè)置步驟。本節(jié)關(guān)于SVN服務(wù)問題講解完畢,請關(guān)注本節(jié)其他相關(guān)報道。

 【編輯推薦】

  1. 技術(shù)分享 SVNServe如何建立SVN服務(wù)
  2. 配置本地SVN服務(wù)器簡明步驟詳解
  3. ApacheSVN服務(wù)器安裝指導(dǎo)手冊
  4. 六小步輕松實現(xiàn)在Centos上配置SVN服務(wù)器
  5. SVN服務(wù)器安裝指導(dǎo)手冊
責(zé)任編輯:佚名
相關(guān)推薦

2014-08-06 11:25:00

LinuxSVN服務(wù)器

2010-06-02 16:32:28

SVN代碼管理

2010-06-02 19:48:23

搭建SVN服務(wù)器

2010-05-25 09:32:04

搭建SVN服務(wù)器

2010-06-02 18:51:35

搭建SVN服務(wù)器

2010-05-24 09:59:54

SVN服務(wù)器搭建

2010-05-19 17:06:33

Subversion服

2010-06-02 13:05:52

tomcat和svn

2020-03-03 19:24:30

Web服務(wù)器ApacheTomcat

2010-05-21 13:07:14

Windows下SVN

2010-05-21 11:50:54

IIS服務(wù)器

2010-02-24 10:25:21

2010-05-25 08:46:12

2010-05-24 09:24:18

SVN服務(wù)器搭建

2010-06-02 18:38:08

搭建SVN服務(wù)器

2010-05-27 16:06:13

SVN設(shè)置

2010-05-17 16:50:38

IIS服務(wù)器

2011-01-10 14:48:22

2011-03-11 15:52:59

LAMP優(yōu)化

2010-06-02 19:01:38

搭建SVN服務(wù)器
點贊
收藏

51CTO技術(shù)棧公眾號