MyEclipse下SVN安裝問題跟蹤報(bào)道
本節(jié)繼續(xù)介紹MyEclipse下SVN安裝,SVN這一版本控制工具現(xiàn)在正越來越受到用戶的歡迎,用途也越來越廣,下面就讓我們一起來看一下SVN安裝的相關(guān)介紹希望你能學(xué)到SVN更多的知識(shí)。
4.安全配置Subversion
4.1首先解釋3.4種配置信息的用途。
4.1.1<Location/svn>
說明我們所有的代碼倉庫在/svn這個(gè)虛擬目錄下
4.1.2DAVsvn
說明Apache會(huì)使用svn這個(gè)module來解析這個(gè)虛擬目錄
4.1.3SVNParentPathe:\SVN
說明所有的代碼倉庫都在本地硬盤的e:\SVN下
4.1.4AuthTypeBasic
使用最基本的認(rèn)證校驗(yàn),用戶名/密碼
4.1.5AuthName“Subversionrepositories”
說明在認(rèn)證對(duì)話框彈出的時(shí)候,對(duì)話框的標(biāo)題顯示,你可以把它修改成你想要的任何提示信息,比如:AuthName“Warning”等等
4.1.6AuthUserFilepasswd
說明我們使用的accesslist文件的名字,在上一講中我們建立的文件名字是passwd,所以這里是passwd。如果你建立的文件名字是其他的,這里要作相應(yīng)的改動(dòng)
4.1.7AuthzSVNAccessFile
說明svn自己控制的accesslist文件,這個(gè)文件很重要,可以豐富svn的安全配置,在下面會(huì)講到
4.1.8Requirevalid-user
說明只有輸入正確的用戶名/密碼才能訪問
4.2對(duì)代碼倉庫進(jìn)行更細(xì)致的控制
MyEclipse下SVN安裝過程中,如果你對(duì)于代碼倉庫里面某些目錄還有更細(xì)致的訪問控制,只用passwd就沒辦法啦,這個(gè)時(shí)候我們就需要AuthzSVNAccessFile文件了,去掉#AuthzSVNAccessFilesvnaccessfile這一行前面的注釋。Apache首先會(huì)使用passwd校驗(yàn)用戶名和密碼,然后會(huì)認(rèn)證信息傳給Subversion的AuthzSVNAccessFile模塊,由這個(gè)模塊作更進(jìn)一步的權(quán)限控制。
首先我們來新建一個(gè)文件svnaccessfile,內(nèi)容如下:
- [groups]
- developers=user1,user2,user3,user4
- docs=user5,user6,user7
- #toalloweveryonereadaccess
- [/]
- *=r
- #allowalldeveloperscompleteaccess
- @developers=rw
- #givethedocpeoplewriteaccesstothedocsfolder
- [/project/trunk/doc]
- @docs=rw
首先我們定義了兩個(gè)group,一個(gè)是developer,代表開發(fā)組,另外一個(gè)是docs,代表文檔撰寫組,然后[/],*=r
意思是對(duì)于所有的用戶開放可讀的權(quán)限。注意這里的[/],表示是對(duì)根目錄下的所有代碼倉庫賦予權(quán)限。接著是
@developers=rw
[/project/trunk/doc]
@docs=rw
這里再說說SVNParentPath,配置了SVNParentPath,以后每次在根目錄下面加入新的repository就不需要再重新配置Subversion和Apache了,自動(dòng)獲取了根目錄的配置信息,很方便。然而這也引發(fā)了另外一個(gè)問題,當(dāng)你在瀏覽器地址欄里輸入http://youserver/svn/的時(shí)候,服務(wù)器會(huì)報(bào)錯(cuò),提示你沒有權(quán)限訪問訪問這個(gè)url,我們想要的效果是瀏覽到這個(gè)url時(shí)能夠把根目錄下的所有的repository列出來。完成這個(gè)工作需要寫點(diǎn)代碼了,使用的工具可以是很多,這里使用php。MyEclipse下SVN安裝需要訪問代碼庫。
4.3使用php使得可以通過web訪問代碼庫
4.3.1首先去某網(wǎng)站下載php。
4.3.2將下載的php壓縮文件解壓,文件夾改名為php復(fù)制到你想放置的目錄路徑下,注意目錄名不能有空格,否則apache會(huì)找不到相關(guān)的module,比如D:/php-4.3.10RC1-Win32。
4.3.3打開剛才解壓的PHP目錄,你會(huì)發(fā)現(xiàn)有一個(gè)叫做”php.ini-dist”的文件,這就是PHP的配置文件了,你需要把它改名成”php.ini”,然后復(fù)制到系統(tǒng)目錄windows(2K應(yīng)該是winnt)下。打開這個(gè)配置文件,把;cgi.force_redirect=1改成cgi.force_redirect=0,這樣做是強(qiáng)迫不運(yùn)行在cgi模式下,我們希望php工作在Apache的module模式下。
4.3.4PHP安裝目錄下的”php4ts.dll”必須要復(fù)制到windows系統(tǒng)的system32目錄下。
4.4.5dlls和extensions目錄里的所有文件拷到system32里。
4.4.6打開Apache的配置文件http.conf,在module配置節(jié)末尾加上LoadModulephp4_moduleD:/php-4.3.10RC1-Win32/sapi/php4apache2.dll和AddTypeapplication/x-httpd-php.php.php3.php4
4.4.7如果下載得到是php5的話,仍然做與上面類比作操作,應(yīng)該也很容易吧~~
4.4.8用文本編輯器編寫一個(gè)php文件,保存為svn_index.php,內(nèi)容如下:
- <html>
- <head>
- <title>SubversionRepositories</title>
- </head>
- <body>
- <h2>SubversionRepositories</h2>
- <p>
- <?php
- $svnparentpath=“e:/svn”;
- $svnparenturl=“/svn”;
- $dh=opendir($svnparentpath);
- if($dh){
- while($dir=readdir($dh)){
- $svndir=$svnparentpath.“/”.$dir;
- $svndbdir=$svndir.“/db”;
- $svnfstypefile=$svndbdir.“/fs-type”;
- if(is_dir($svndir)&&is_dir($svndbdir)){
- echo“<ahrefahref=\”".$svnparenturl.“/”.
- $dir.“\”>”.$dir.“</a>\n”;
- if(file_exists($svnfstypefile)){
- $handle=fopen(“$svnfstypefile”,“r”);
- $buffer=fgets($handle,4096);
- fclose($handle);
- $buffer=chop($buffer);
- if(strcmp($buffer,“fsfs”)==0){
- echo”(FSFS)<br/>\n”;
- }else{
- echo”(BDB)<br/>\n”;
- }
- }else{
- echo”(BDB)<br/>\n”;
- }}}
- closedir($dh);
- }
- ?>
- </p>
- </body>
- </html>
上述php文件中svnparentpath=“e:/svn”;需要注意,你的subversion的代碼倉庫的根目錄可能并不在e:/svn,請(qǐng)修改和你自己設(shè)置一樣的路徑。更改Apache的配置文件http.conf文件,把#LoadModulerewrite_modulemodules/mod_rewrite.so前面的注釋去掉。然后在文件末尾加上如下幾句:
RewriteEngineon
RewriteRule^/svn$/svn_index.php[PT]
RewriteRule^/svn/$/svn_index.php[PT]
RewriteRule^/svn/index.html$/svn_index.php[PT]
5MyEclipse下SVN安裝完成后如何在在MyEclipse中使用SVN?
5.1引入相關(guān)的plugins和features
在$MyEclipse\eclipse\plugins\下應(yīng)有org.tigris.subversion.javahl.win32_1.2.2.jar,org.tigris.subversion.subclipse.core_1.2.2.jar,org.tigris.subversion.subclipse.doc_1.2.0.jar,org.tigris.subversion.subclipse.mylar_1.0.1.jar,org.tigris.subversion.subclipse.ui_1.2.2.jar。
在$MyEclipse\eclipse\features\下應(yīng)有org.tigris.subversion.subclipse.mylar_1.0.1,org.tigris.subversion.subclipse_1.2.2。
5.2重起MyEclipse。在windows->preferences->team中應(yīng)該可以看到SVN了。這時(shí)就可以使用SVN的相關(guān)功能了。本節(jié)MyEclipse下SVN安裝問題介紹完畢。
【編輯推薦】
- 技術(shù)指導(dǎo):Subversion安裝配置(Windows)之詳解
- Subversion和TortoiseSVN如何在Windows下進(jìn)行構(gòu)建SVN版本控制
- 深度剖析:Subversion服務(wù)器安裝配置
- MyEclipse中SVN安裝配置新手指南
- MyEclipse下配置SVN專家全程指導(dǎo)