Subversion的安裝和使用

來源:互聯網
上載者:User

一、環境

1、作業系統:Windows XP

2、JDK:JDK 1.6.0

二、下載和安裝

相關軟體已經相應的網址:

軟體

網址

備忘

apache_2.2.14-win32-x86-openssl-0.9.8k.msi

http://archive.apache.org/dist/httpd/binaries/win32/

HTTP伺服器軟體

Setup-Subversion-1.6.6.msi

http://subversion.tigris.org/servlets/ProjectDocumentList?

folderID=11151&expandFolder=11151&folderID=74

SVN伺服器

TortoiseSVN-1.6.12.20536-win32-svn-1.6.15.msi

http://www.duduwolf.com/post/setting_up_subversion.asp

SVN用戶端

三、Apache 2.2.14 安裝

1、雙擊apache_2.2.14-win32-x86-openssl-0.9.8k.msi進行安裝,在遇到下面對話方塊中輸入內容:

2、一直按下一步,直到安裝完成

3、有可能無法直接啟動httpd服務(通常是因為80連接埠被其它應用程式佔用了)。這時,請不要擔心,導航到apache的安裝路徑,這裡使用的是一個預設的安裝路徑:C:/Program Files/Apache Software Foundation/Apache2.2/conf設定檔:httpd.conf。

ServerRoot "C:/Program Files/Apache Software Foundation/Apache2.2"

#

# Listen: Allows you to bind Apache to specific IP addresses and/or

# ports, instead of the default. See also the <VirtualHost>

# directive.

#

# Change this to Listen on specific IP addresses as shown below to

# prevent Apache from glomming onto all bound IP addresses.

#

#Listen 12.34.56.78:80

Listen 8888

#

# Dynamic Shared Object (DSO) Support

#

# To be able to use the functionality of a module which was built as a DSO you

# have to place corresponding `LoadModule' lines at this location so the

# directives contained in it are actually available _before_ they are used.

# Statically compiled modules (those listed by `httpd -l') do not need

4、Apache預設的監聽商品是80連接埠,這裡我把它改為8888。然後手動啟動httpd服務:我的電腦 -> 控制台 -> 管理工具 -> 服務。

5、現在你可以在你的瀏覽器中鍵入 http://localhost/,如果呈現了如下圖片,那麼你的Apache就安裝成功了。

四、Subversion安裝

1、雙擊SVN安裝檔案:Setup-Subversion-1.6.6.msi,一步步確認及可安裝成功。

2、添加環境變數:右擊我的電腦-> 屬性 -> 進階 -> 環境變數 -> 系統變數 -> 變數Path C:/Program Files/Subversion/bin和C:/Program Files/Apache Software Foundation/Apache2.2/bin,變數間用英文分號“;”。

3、重啟電腦。卸載重新安裝一定要刪除原來的安裝目錄。

五、SVN的配置和應用

1. 從SVN的bin目錄複寫兩個SVN模組(mod_authz_svn.so, mod_dav_svn.so)到Apache的modules目錄。

SVN bin 目錄:

C:/Program Files/Subversion/bin

Apache modules 目錄:

C:/Program Files/Apache Software Foundation/Apache2.2/modules

2. 修改Apache的設定檔:httpd.conf(C:/Program Files/Apache Software Foundation/Apache2.2/conf)。

注意加粗字型部分,最後的Location部分添加到最後。

# Dynamic Shared Object (DSO) Support

#

# To be able to use the functionality of a module which was built as a DSO you

# have to place corresponding `LoadModule' lines at this location so the

# directives contained in it are actually available _before_ they are used.

# Statically compiled modules (those listed by `httpd -l') do not need

# to be loaded here.

#

# Example:

# LoadModule foo_module modules/mod_foo.so

#

LoadModule actions_module modules/mod_actions.so

LoadModule alias_module modules/mod_alias.so

LoadModule asis_module modules/mod_asis.so

LoadModule auth_basic_module modules/mod_auth_basic.so

#LoadModule auth_digest_module modules/mod_auth_digest.so

#LoadModule authn_alias_module modules/mod_authn_alias.so

#LoadModule authn_anon_module modules/mod_authn_anon.so

#LoadModule authn_dbd_module modules/mod_authn_dbd.so

#LoadModule authn_dbm_module modules/mod_authn_dbm.so

LoadModule authn_default_module modules/mod_authn_default.so

LoadModule authn_file_module modules/mod_authn_file.so

#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so

#LoadModule authz_dbm_module modules/mod_authz_dbm.so

LoadModule authz_default_module modules/mod_authz_default.so

LoadModule authz_groupfile_module modules/mod_authz_groupfile.so

LoadModule authz_host_module modules/mod_authz_host.so

#LoadModule authz_owner_module modules/mod_authz_owner.so

LoadModule authz_user_module modules/mod_authz_user.so

LoadModule autoindex_module modules/mod_autoindex.so

#LoadModule cache_module modules/mod_cache.so

#LoadModule cern_meta_module modules/mod_cern_meta.so

LoadModule cgi_module modules/mod_cgi.so

#LoadModule charset_lite_module modules/mod_charset_lite.so

LoadModule dav_module modules/mod_dav.so

LoadModule dav_fs_module modules/mod_dav_fs.so

#LoadModule dav_lock_module modules/mod_dav_lock.so

#LoadModule dbd_module modules/mod_dbd.so

#LoadModule deflate_module modules/mod_deflate.so

LoadModule dir_module modules/mod_dir.so

#LoadModule disk_cache_module modules/mod_disk_cache.so

#LoadModule dumpio_module modules/mod_dumpio.so

LoadModule env_module modules/mod_env.so

#LoadModule expires_module modules/mod_expires.so

#LoadModule ext_filter_module modules/mod_ext_filter.so

#LoadModule file_cache_module modules/mod_file_cache.so

#LoadModule filter_module modules/mod_filter.so

#LoadModule headers_module modules/mod_headers.so

#LoadModule ident_module modules/mod_ident.so

#LoadModule imagemap_module modules/mod_imagemap.so

LoadModule include_module modules/mod_include.so

#LoadModule info_module modules/mod_info.so

LoadModule isapi_module modules/mod_isapi.so

#LoadModule ldap_module modules/mod_ldap.so

#LoadModule logio_module modules/mod_logio.so

LoadModule log_config_module modules/mod_log_config.so

#LoadModule log_forensic_module modules/mod_log_forensic.so

#LoadModule mem_cache_module modules/mod_mem_cache.so

LoadModule mime_module modules/mod_mime.so

#LoadModule mime_magic_module modules/mod_mime_magic.so

LoadModule negotiation_module modules/mod_negotiation.so

#LoadModule proxy_module modules/mod_proxy.so

#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

#LoadModule proxy_connect_module modules/mod_proxy_connect.so

#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

#LoadModule proxy_http_module modules/mod_proxy_http.so

#LoadModule rewrite_module modules/mod_rewrite.so

LoadModule setenvif_module modules/mod_setenvif.so

#LoadModule speling_module modules/mod_speling.so

#LoadModule ssl_module modules/mod_ssl.so

#LoadModule status_module modules/mod_status.so

#LoadModule substitute_module modules/mod_substitute.so

#LoadModule unique_id_module modules/mod_unique_id.so

#LoadModule userdir_module modules/mod_userdir.so

#LoadModule usertrack_module modules/mod_usertrack.so

#LoadModule version_module modules/mod_version.so

#LoadModule vhost_alias_module modules/mod_vhost_alias.so

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

<IfModule !mpm_netware_module>

<IfModule !mpm_winnt_module>

<Location /svn/>

Dav svn

SVNParentPath "E:/svn/repository"

AuthType Basic

AuthName "ICIL SVN"

SVNListParentPath on

AuthUserFile "E:/svn/userfile.txt"

AuthzSVNAccessFile "E:/svn/accessfile.txt"

Require valid-user

</Location>

RedirectMatch ^(/svn)$ $1/

注釋:

SVNParentPath--SVN的庫根目錄(手動建立)路徑,可以在這下面建立多個版本庫;

AuthUserFile--------使用者帳號資訊檔(用htpasswd命令建立檔案userfile.txt);

AuthzSVNAccessFile--許可權控制檔案(手動建立);

RedirectMatch ^(/svn)$ $1/-----------重新導向路徑(/svn定向到/svn/),這樣訪問庫列表可以通過http://ip:port/svn訪問。

3. 建立SVN版本庫。用svnadmin命令建立庫。按下圖操作你會發現在E:/svn/repository多了一個MyProject檔案夾。

注意:你首先要導航到SVNParentPath: E:/svn/repository然後運行該命令。

4. 建立SVN使用者帳號檔案。在Apache的設定檔裡我們設了AuthUserFile 路徑: C:/svn/userfile.txt,現在在DOS命令列裡導航到檔案夾:E:/svn/運行命令:htpasswd –c userfile.txt username建立使用者帳號檔案,同時建立了一個初始帳號。

注意:-c參數表示建立一個使用者帳號檔案,下一次你再建立其它的帳號的時候就不需要這個參數了。

5. 建立許可權控制檔案。

在設定檔裡我們設了AuthzSVNAccessFile 路徑:C:/svn/accessfile.txt,現在我們手動建立這個文字檔,同時輸入如下內容:

[/]

*=rw

[test:/]

admin=rw

huahua=rw

6、最後重啟apache服務。

然後在瀏覽器裡試著訪問一下SVN版本庫:http://localhost:8888/svn/Project。如果你看到如下圖的內容說明你成功了。

六、用戶端TortoiseSVN-1.6安裝

1、雙擊TortoiseSVN-1.6.12.20536-win32-svn-1.6.15.msi,點擊下一步直到安裝完成為止。

2、如果右擊一個檔案夾出現如下紅框結果,即為安裝成功。

七、SVN應用

1、把原始碼匯入到svn伺服器:

A、右擊工程,點擊如下紅框匯入部分。

B、“Import”顯示為:

C、輸入上傳的地址http://ip:port/自訂路徑,OK,如下

D、輸入之前配置的許可權檔案的帳號和密碼,確定之後如下圖:

 

2、把原始碼從svn伺服器匯出到本地:

A、找一空白地區,右擊滑鼠,出現如下圖:

B、點擊”Export”,得到:

C、點擊”OK”,得到如下圖,並輸入帳號和密碼:

八、通過用戶端瀏覽器查看SVN

匯入的原始碼是加密的,需要通過svn用戶端瀏覽器才可以看到以及進行其他動作。右擊滑鼠,得到如下圖:

 

九、總結一下

1、SVN是目前比較流行的開源的版本管理工具,值得嘗試配置

2、上面的內容講述的佈建服務端和用戶端兩個部分。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.