千里冰封
          JAVA 濃香四溢
          posts - 151,comments - 2801,trackbacks - 0
          因為工作需要,要架設一個Subversion和Apache一起工作的源碼管理器.以便協同工作.于是網上找了一些資料,在找資料的過程中,也走了一些彎路,于是自己整理了一下安裝的過程和一些注意的事項,希望能對大家有些幫助.
          我這里用的IDE是netbeans6.0,其實用什么IDE都無所謂,只是netbeans一直是我喜歡的IDE,所以順便向大家推薦一下.呵呵.
          好了,言歸正傳吧,要準備的東西如下:
          1,apache_2.0.63-win32-x86-no_ssl.msi
          下載:http://apache.mirror.phpchina.com/httpd/binaries/win32/apache_2.0.63-win32-x86-no_ssl.msi
          2,svn-1.4.5-setup.exe
          下載地址:http://subversion.tigris.org/files/documents/15/39559/svn-1.4.5-setup.exe
          當然,你也可以選擇安裝TortoiseSVN.但是我沒有裝,因為我的源碼管理都是用netbeans完成的.

          好了,準備的兩個軟件都下載下來以后,就可以開始安裝了.
          首先安裝apache,一般來說直接點下一步就可以了,在設置domain以及host的時候,設置為localhost就可以了,Email你可以填你自己的Email,也可以隨便填一個.安裝apache要注意的是,你的電腦上80端口不能被占用,否則你的http服務是啟動不起來的,我就遇到過這事,因為我用了skype,它在本機上打開了80和443端口來監聽,搞得我一開始裝不好,總是啟動不起來,后來才發現是skype占用了80端口,于是把skype的設置改了以后,重裝apache才成功.裝好apache以后,這個時候,它已經在運行了,你可以在瀏覽器的地址欄輸入http://localhost看看,是否安裝成功,如果安裝成功的話,這個時候瀏覽器里面應該是可以看到一個頁面的.
          然后,再安裝svn-1.4.5-setup.exe,也很簡單,一步一步點下步就可以了,在安裝的過程中,它會默認選中一些選項,其中就有一個是是否對apache的HTTP服務器提供支持的選項,這個默認是勾上的,不要去反選它,其它的你可以反選掉.然后svn就宣布安裝成功了.你可以到CMD下面去試一下svn這個命令,如果有輸出,則說明安裝成功了,如果提示svn 不是內部或外部命令,也不是可運行的程序或批處理文件。那就說明沒有裝好.或者沒有把這個命令加入到path中,所以最好的辦法是到svn的安裝目錄下的bin里面去看一下.
          兩者都裝好了以后,就開始配置,當然,配置也是最重要的.
          首先要建立一個數據倉庫,我們假設建在E盤,數據倉庫最好不要建在C盤,因為C盤重裝系統以后就格了.我們先在E盤下面建立一個目錄叫svnroot,然后在svnroot下面再建立一個我們專門放我們工程的目錄,比如叫MyProject.于是我們在E盤下面就有了這個一個文件夾:E:\svnroot\MyProject,然后我們用svnadmin的命令,使這個文件夾變成我們的數據倉庫,命令如下:
          svnadmin create E:\svnroot\MyProject
          如果運行成功的話,什么也沒有輸出,這個時候,我們再來到MyProject文件夾下面,我們會發現多了幾個文件夾和文件,我們打開conf文件夾,然后再打開svnserve.conf文件,找到如下行# password-db = passwd,然后把它前面的#去掉,表示MyProject是需要密碼驗證的.但是我們密碼設在哪里呢,這個時候我們再打開conf文件夾下面的passwd文件,用文本編輯器打開,在[users]下面加上我們需要啟動的人員的用戶和密碼,比如
          [users]
          hadeslee=hadeslee1234
          tom=123456

          這個的話,我們就啟動了兩個用戶,一個叫hadeslee,密碼是hadeslee1234,一個叫tom,密碼是123456.然后我們保存passwd文件.然后,我們再建一個文件,叫access.auth,這個文件是設置訪問權限的,里面內容如下:
          [MyProject:/]
          hadeslee = rw
          [MyProject:/module1]
          tom=rw
          hadeslee=rw

          這表示,MyProject下面的所有子目錄hadeslee都是有權限讀寫的,但是tom只有權限讀寫此項目下面的module1目錄,這個各自的訪問權限就分的更細致了.有關于MyProject文件夾下面的設置,我們就告一段落了,我們現在開始設置apache,使它能和subvertion一起工作.

          首先來到Subersion的安裝目錄,進入它的bin目錄,我們會發現如下兩個文件:
          mod_authz_svn.so
          mod_dav_svn.so

          我們把這兩個文件復制一下,粘帖到apache的安裝目錄下的modules文件中,然后我們再打開apache安裝目錄下的conf文件夾,打開httpd.conf文件.增加如下兩行:
          LoadModule dav_svn_module modules/mod_dav_svn.so
          LoadModule authz_svn_module modules/mod_authz_svn.so

          注意,由于dav_svn需要dav_module的支持,所以要確保下面這一行沒有被注釋,并且保證在dav_svn之前加載:
          LoadModule dav_module modules/mod_dav.so
          然后模塊的設置就完成了,下面我們要設置SVN的目錄,以使我們的apache能知道訪問不同的URL的時候,它去哪里尋找這個URL所對應的SVN目錄.
          httpd.conf文件中,增加如下內容:
          <Location /svn/MyProject>
          DAV svn
          SVNPath E:/svnroot/MyProject

          AuthzSVNAccessFile E:/svnroot/MyProject/conf/access.auth
          Satisfy Any
          Require valid-user

          AuthType Basic
          AuthName "Subversion repositories"
          AuthUserFile  E:/svnroot/MyProject/conf/users.auth
          Require valid-user
          </Location>


          添加完上面這些,我們會發現access.auth是我們剛才新建的,可是users.auth我們并沒有新建啊.怎么就把它加進去了.不要急,現在我們就來生成users.auth文件.

          進入apache的安裝目錄的bin文件夾,輸入如下命令:

          D:\Program Files\Apache Group\Apache2\bin>htpasswd -cb users.auth hadeslee hadeslee1234
          Automatically using MD5 format.
          Adding password for user hadeslee

          D:\Program Files\Apache Group\Apache2\bin>

          我們就會發現在bin目錄生成了users.auth,我們可以看到,hadeslee用戶名已經被添加進去了,密碼是用MD5加密過的.然后我們還要增加用戶呢,可以用如下方法:
          D:\Program Files\Apache Group\Apache2\bin>htpasswd -b users.auth tom 123456
          Automatically using MD5 format.
          Adding password for user tom

          D:\Program Files\Apache Group\Apache2\bin>


          只是在生成密碼的時候,小了一個c的參數,因為c表示重新生成一個這樣的文件,我們第一次的時候是要加的,后面我們要添加用戶的時候,就不用這個c了.然后打開users.auth,會發現兩個用戶都已經在里面了,這個時候,我們把users.auth移到E:/svnroot/MyProject/conf/里面去,使我們上面的設置生效.

          這個時候,我們的設置就完成了.可以在瀏覽器里面輸入http://localhost/svn/MyProject試試看.

          如果以后我們還要加入其它的項目呢,可以有兩點解決方式
          1,把以后的項目也導入到我們的MyProject的倉庫中,這個的話,就不用改什么配置了
          2,新建一個數據倉庫,然后只要按上面的步驟,把新的<Location...>設置放到httpd.conf里面就可以了.
          當然,驗證文件,訪問權限文件,還有訪問SVN的密碼都要自己按上面的方法再設一遍.

          祝大家能夠設置成功:)





          盡管千里冰封
          依然擁有晴空

          你我共同品味JAVA的濃香.
          posted on 2008-03-12 18:59 千里冰封 閱讀(35997) 評論(40)  編輯  收藏 所屬分類: JAVA擴展

          FeedBack:
          # re: Apache和Subversion集成安裝與配置
          2008-03-12 19:09 | BeanSoft
          我汗!發表9分鐘頁面點擊1811!大概是搜索引擎的BOT!不錯,SVN。  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-12 20:34 | DC
          Windows下面用Visual SVN就好了,方便快捷,容易管理,而且也免費。  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-13 12:24 | 飄然
          呵呵,我前段時間寫了一個同樣的東西,不過是在linux平臺。  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2008-03-20 21:44 | CoderDream
          不錯,這個要支持!  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:13 | ericloo
          我按照您的步驟,做了,過程很順利
          可是為什么在瀏覽器里面輸入http://localhost/svn/MyProject的時候
          說找不到,有一個404錯誤  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:32 | 千里冰封
          @ericloo
          httpd.conf文件你有沒有改成你自己的路徑?  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:40 | ericloo
          @千里冰封
          改了,
          還以為就是這個原因呢,結果還是不行
          不過http://localhost可以的
          輸入http://localhost/svn/MyProject的時候,說不在服務器上  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:44 | ericloo
          @千里冰封
          好了!!!
          還是路徑的問題,
          文章里的路徑好像也有問題,
          <Location /svn/MyProject>
          ~~~~
          DAV svn
          SVNPath E:/svnroot/MyProject
          ~~~~~

          這兩處不應該一樣的嗎?

          我剛剛接觸,呵呵呵

            回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:45 | 千里冰封
          LoadModule dav_module modules/mod_dav.so
          有沒有先導入mod_dav.so模塊?
          然后關鍵就在于
          <Location /svn/MyProject>
          DAV svn
          SVNPath E:/svnroot/MyProject

          前者的Location后面的是指的相對于瀏覽器的根目錄的目錄
          SVNPATH指的是你的svn的目錄
          前提是,你用了svnadmin在這個目錄建了subversion的文件  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:49 | ericloo
          哦,可能明白了。
          真的很感謝。
          昨天裝了幾次,沒有成功。
          今天看了這篇文章,一個多小時搞定。呵呵呵
          謝謝  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-24 16:53 | 千里冰封
          @ericloo
          呵呵,搞定就好,不用謝 ,我自己也是碰過這種事情,后來才把它寫下來的,否則,下次我自己也不會裝了.  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-03-31 17:36 | sahara
          很詳細 希望我安裝的時候不出啥叉子!上帝保佑  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-04-15 17:42 | yeoh
          最近剛要配置svn,謝謝樓主的教程~~~支持!  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-07-10 15:17 | 楊勇
          我按照你的方法進行安裝,為什么出現403錯誤呢?
          Forbidden
          You don't have permission to access /svn/MyProject on this server.


          Apache/2.0.63 (Win32) SVN/1.4.5 DAV/2 Server at localhost Port 80
          密碼和用戶名沒有錯啊  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-08-28 10:01 | jessy
          裝了很多次,還是出現這個問題:在瀏覽器里面輸入http://localhost/svn/MyProject的時候
          說找不到,有一個404錯誤
          不知道問題出現在哪,ericloo和樓主是怎么解決這個問題的啊,謝謝了  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-09-16 12:33 | dad
          在瀏覽器里面輸入http://localhost/svn/MyProject的時候
          在頁面上顯示:Revision 0: /

          不知道問題出現在哪,ericloo和樓主是怎么解決這個問題的啊,謝謝了  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-10-15 15:18 | piano
          @dad
          在頁面上顯示:Revision 0: / ,說明你已經配置成功了。但是由于MyProject為空。所以顯示:Revision 0: / 。你導入項目就能看到工程目錄了。  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2008-10-18 10:34 | james
          我把我的一個項目copy到MyProject目錄下,可以刷新頁面,并沒有出現我copy的項目,導入是這么個導法么? 謝謝樓主了,此帖珍藏了!  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-11-03 16:04 | cm
          相當不錯,十分感謝,哈哈  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-11-12 10:11 | en
          查資料看了別的文章后試了半天沒用,這篇文章一試成功了,
          可見有些人寫的文章邏輯之混亂,這篇文章寫的流暢有條理, 非常感謝。
            回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2008-11-28 14:52 | linda
          樓主按照您的步驟,都配置好了,httpd.conf文件里也改成自己的路徑了,
          輸入http://localhost/svn/MyProject的時候,老是出現404錯誤。不知道樓主是否知道是哪里錯了????急啊~~~~
            回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2008-11-28 18:59 | 蒙蒙
          @linda
          如果你是按樓主配的話,是不會錯的  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-03-31 18:30 | 地方
          呵呵...樓上說的太有意思了  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-06-05 11:09 | 簡單
          "我這里用的IDE是netbeans6.0"
          我也是404錯誤
          是不是跟這個有關,我沒有裝這個netbeans6.0  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-07-08 13:59 | swprogrammer
          樓主我按照你這樣配置下來,但瀏覽器中輸入http://localhost能看到一個apache頁面,但是輸入http://localhost/svn/oa這樣,就訪問不到類庫了,而我自己啟動svn服務器,使用svn://localhost/oa能訪問到  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-07-08 14:00 | swprogrammer
          這只我在httpd.conf中加的配置  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-07-08 14:00 | swprogrammer
          LoadModule dav_svn_module modules/mod_dav_svn.so
          LoadModule authz_svn_module modules/mod_authz_svn.so
          <Location /svn/oa>
          DAV svn
          SVNPath E:\svnroot\oa

          AuthzSVNAccessFile E:\svnroot\oa\conf\access.auth
          Satisfy Any
          Require valid-user

          AuthType Basic
          AuthName "Subversion repositories"
          AuthUserFile E:\svnroot\oa\conf\users.auth
          Require valid-user
          </Location>
            回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-07-08 14:01 | swprogrammer
          望樓主能幫忙解決下,我QQ303729254,等待樓主的幫助啊,弄了一天了,郁悶啊  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-08-21 14:37 | ax
          我的也沒有成功哦! 都試了好多遍了!   回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2009-09-15 16:19 | jerry
          按照這個方式,apache服務都啟動不了  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-10-05 15:41 | chevalier
          我按照這篇文章裝的 結果是在ie里面可以訪問庫,但是用tortoisesvn卻不能,可以幫我找找原因嗎  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-10-09 09:57 | Suger
          為什么我的在安裝svn的時候,沒看到什么是否支持Apache的選項啊,我裝了三次都沒看到,怎么回事  回復  更多評論
            
          # Apache和Subversion集成安裝與配置
          2009-10-31 22:25 | 彥孜
          如果安裝沒問題,在http://localhost下可以而訪問svn時出現404錯誤
          大家可以重啟下機器看行不  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2009-11-03 11:58 | 水域
          是的,安裝和配置完要重啟下機器。要不就是會出現404錯誤,我重啟了一下就OK啦。  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2009-12-27 18:04 | fly
          thank you.按照樓主配置OK.
          開始的時候也是出現404 error 重啟了之后就OK.wowo.  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2010-04-30 13:43 | coolesting
          @飄然
          Could you show me your article for that about install both apache and subversion in the linux. please.  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2010-11-05 14:29 | bravecheng
          我按照樓主的方式進行了配置 也沒有報錯 但是怎么樣才能在localhost/svn/MyProject下面運行動態頁面呢比如index.php呢? 求樓主發郵件給我chenghuiyong1987@hotmail.com 或者 chenghuiyong1987@gmail.com  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置
          2011-03-31 09:50 | 小傅
          非常感謝,這個方法可用  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2011-09-05 22:53 | aaaa
          請問我怎么把java項目放到svn來管理呢?謝謝!  回復  更多評論
            
          # re: Apache和Subversion集成安裝與配置[未登錄]
          2011-09-05 22:53 | aaaa
          @小傅
          請問我怎么把java項目放到svn來管理呢?謝謝!  回復  更多評論
            
          主站蜘蛛池模板: 理塘县| 开平市| 泽州县| 禄丰县| 十堰市| 广元市| 汉源县| 澄江县| 普格县| 福鼎市| 潼南县| 赣榆县| 襄汾县| 独山县| 苍梧县| 乐都县| 万州区| 裕民县| 会东县| 津南区| 龙州县| 合水县| 莆田市| 临颍县| 隆德县| 拜城县| 昭通市| 建水县| 道真| 嘉义县| 绍兴市| 深圳市| 南丹县| 崇信县| 舟曲县| 丰都县| 河南省| 安庆市| 齐齐哈尔市| 永平县| 九江市|