Linux Server 5.5安裝SVN+Apache服務

來源:互聯網
上載者:User
文章目錄
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Enterprise 5.5安裝SVN+Apache服務

前言

(簡稱)是近年來崛起的版本管理軟體,是的接班人。 是一個自由 / 開源的版本控制系統。也就是說,在 管理下,檔案和目錄可以超越時空。也就是 允許你的資料恢複到早期版本,或者是檢查資料修改的曆史。正因為如此,許多人將版本控制系統當作一種神奇的“時間機器”。目前,絕大多數開源軟體都在使用 作為代碼版本管理軟體。

支援 和,更多是安裝在下。
伺服器有 2 種運行方式:獨立伺服器藉助2 種方式運行各有利弊。
儲存版本資料也有 2 種方式:和。因為方式在伺服器中斷時,有可能鎖住資料,所以還是方式更安全一點,常見的建立資料版本庫也都是使用方式。

相關平台軟體

+軟體安裝包下載推薦,在所有平台上的安裝檔案都在此站有免費下載,選擇要在什麼操作平台上進行安裝配置,就下載相應的安裝檔案,進行安裝配置。

www.open.collab.net/cn/downloads/subversion/redhat.html

我所使用到的安裝檔案如下:

       

安裝過程:

  安裝非常簡單容易,安裝已經編譯過的 rpm 檔案即可!

  首先安裝,安裝說明原文如下:

CollabNet Subversion RPMs are signed using our GPG key. As a one-time task,
import the CollabNet GPG key using the command:

sudo rpm --import /path/to/RPM-GPG-KEY-csvn.asc

The CollabNet GPG key is available for download at:
http://www.collab.net/nonav/downloads/subversion/gpg-key/RPM-GPG-KEY-csvn.asc

按照說明操作即可進行下一步安裝,否則會有提示告知。開啟終端,切換到 root 帳號:

[root@localhost]# rpm --import RPM-GPG-KEY-csvn.asc

簽名檔案安裝後,接著就可以進行下面的安裝了。

先安裝 client ,然後 server ,最後是 extras ,順序一次進行安裝下去。

[root@localhost]# rpm -ivh CollabNetSubversion-client-1.6.9-1.i386.rpm
Preparing... ########################################### [100%]
1:CollabNetSubversion-cli########################################### [100%]
[root@localhost]#

client 端安裝完成;

[root@localhost]# rpm -ivh CollabNetSubversion-server-1.6.9-1.i386.rpm
Preparing... ########################################### [100%]
1:CollabNetSubversion-ser########################################### [100%]
[root@localhost]#

server 端安裝完成;

[root@localhost]# rpm -ivh CollabNetSubversion-extras-1.6.9-1.i386.rpm
Preparing... ########################################### [100%]
1:CollabNetSubversion-ext########################################### [100%]
[root@localhost]#

extras 端也順利安裝完成;

這樣三個 rpm 安裝檔案就順利安裝完成了。 此時,系統也就自動增加了一個 csvn 使用者/組。

[root@localhost]# more /etc/passwd
csvn:x:502:501:CollabNet Subversion:/opt/CollabNet_Subversion:/bin/bash

[root@localhost]# more /etc/group
csvn:x:501:

SVN相關的程式目錄也建立完成;

接著進行的配置:

在 /opt/CollabNet_Subversion/bin 目錄下執行 Configure-CollabNet-Subversion ,一步一步按照提示操作即可順利完成簡單的服務配置。

[root@localhost]# ./Configure-CollabNet-Subversion

CollabNet Subversion Server is a free download of open-source Subversion,

  compiled and tested by CollabNet. For more information about CollabNet

  Subversion, visit the CollabNet community at http://open.collab.net.

  Would you like to configure the CollabNet Subversion Server now? [yes] (直接斷行符號)

  Welcome to CollabNet Subversion Server setup.

  You will now be asked some questions to configure CollabNet Subversion.

  Defaults are given in square brackets. If a default is okay for you

  Just hit [Enter] to continue.

  This setup can configure either Apache or svnserve as Subversion

  server, for you. Would you like to configure Apache as your

  Subversion server now? [yes] (直接斷行符號)

  Continuing with apache Subversion server configuration ...

  Specify the base directory for Subversion repositories: [/var/svn/repositories] /opt/SVNRepositories (這裡我更改了SVN倉庫儲存路徑,不使用預設的路徑。)

  Non-existing base path, Let me create and continue [yes] (直接斷行符號)

  Base path created.

  Would you like to create a new Subversion repository? [yes] (直接斷行符號)

  What should be your new Subversion repository name? DEOM (這裡建立一個名為 DEMO 的測試用庫)

  New repository created.

  Would you like to initialize the repository with trunk/branches/tags folders? [no] (直接斷行符號)

  Done.

  Would you like to create another Subversion repository? [yes] (直接斷行符號)

  What should be your new Subversion repository name? svntest (這裡再建立一個名為 svntest 的庫)

  New repository created.

  Would you like to initialize the repository with trunk/branches/tags folders? [no](直接斷行符號)(暫時不匯入初始資料)

  Done.

  Would you like to create another Subversion repository? [yes] no (已經建立了2個測試用庫,就不再建了。)

  Would you like to give the name and port that the server uses to identify itself? [yes]

  Registered DNS name or IP address: 192.168.168.159 (這裡IP是指 apache 的服務“IP”配置。)

  Server port number: 18080 (apache的服務連接埠號碼)

  Allow anonymous read access? [no] (直接斷行符號)

  0 users currently have access to this repository:

  Would you like to create a new Subversion account? [yes] (直接斷行符號)

  Account username

  (To re-create or delete a Subversion account, enter an existing username): svnadmin (建立一個SVN帳號)

  Account password: (密碼)

  Retype account password: (重複密碼)

  Adding password for user svnadmin

  Account created

  Would you like to create another user account? [yes] no (暫時不需要再建另一使用者了)

  Would you like to configure ViewVC? [yes] (是否啟用VierVC,直接斷行符號)

  Stopping CollabNet Subversion: httpd (no pid file) not running

  done

  Starting CollabNet Subversion: done

  (此時,+服務也順利地配置完成了。最後的提示資訊如下:)

  Congratulations! You have successfully configured the CollabNet

  Subversion server.

  You can access your repositories at the following URL:

  http://192.168.168.159:18080/svn/YOUR-REPOS-NAME

  http://192.168.168.159:18080/viewvc/YOUR-REPOS-NAME

最後,配置完成後進行檢查:

[root@localhost]# ps -ef|grep httpd
root 2569 1 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2588 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2595 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2596 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2597 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2599 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2600 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3809 2569 0 18:18 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3813 2569 0 18:18 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3814 2569 0 18:18 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3836 2569 0 18:21 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3839 2569 0 18:21 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
root 4696 4113 0 19:56 pts/1 00:00:00 grep httpd

在瀏覽器中訪問SVN服務;

  http://192.168.168.159:18080/svn/DEMO

:瀏覽器上的地址欄!

  http://192.168.168.159:18080/viewvc

小結

  到此,+服務就搭建完成了,SVN 是個很好的版本控制軟體,好好的享受它帶來的無限樂趣吧!

 

 

 

 

 

1、將檔案checkout到本地目錄

svn checkout path(path是伺服器上的目錄)
例如:svn checkout svn://192.168.168.159:18080/pro/domain
簡寫:svn co

2、往版本庫中添加新的文 件

svn addfile
例如:svn add test.php(添加test.php)
svn add*.php(添加目前的目錄下所有的php檔案)

3、將改動的檔案提交到版 本庫

svn commit -m "LogMessage" [-N][--no-unlock] PATH(如果選擇了保持鎖,就使用--no-unlock開關)
例如:svn commit -m "add test file for my test" test.php
簡寫:svn ci

4、加鎖/解鎖

svn lock -m "LockMessage" [--force] PATH
例如:svn lock -m "lock test file" test.php
svn unlock PATH

5、更新到某個版本

svn update -r m path
例如:
svn update如果後面沒有目錄,預設將目前的目錄以及子目錄下的所有檔案都更新到最新版本。
svn update -r 200 test.php(將版本庫中的檔案test.php還原到版本200)
svn update test.php(更新,於版本庫同步。如果在提交的時候提示到期的話,是因為 衝突,需要先update,修改檔案, 然後清除 svn resolved,最後再提交commit)
簡寫:svn up

6、查看檔案或者目錄狀態

1) svn status path(目錄下的檔案和子目錄的狀態,正常狀態不顯示)
【?:不在svn的控制中;M:內容被修改;C:發生衝突;A:預定加入到版本庫;K:被鎖定】
2) svn status -v path(顯示檔案和子目錄狀態)
第一列保持相同,第二列顯示工作版本號碼,第三和第四列顯示最後一次修改的版本號碼和修改人。
註:svn status、svn diff和 svn revert這三條命令在沒有網路的情況下也可以執行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。
簡寫:svn st

7、刪除檔案

svn delete path -m "delete test fle"
例如:svn delete svn://192.168.168.159:18080/pro/domain/test.php -m "delete test file"
或者直接svn delete test.php 然後再svn ci -m 'delete test file‘,推薦使用這種
簡寫:svn (del, remove, rm)

8、查看日誌

svn log path
例如:svn log test.php 顯示這個檔案的所有修改記錄,及其版本號碼的變化

9、查看檔案詳細資料

svn info path
例如:svn info test.php

10、比較差異

svn diff path(將修改的檔案與基礎版本比較)
例如:svn diff test.php
svn diff -r m:n path(對版本m和版本n比較差異)
例如:svn diff -r 200:201 test.php
簡寫:svn di

11、將兩個版本之間的差 異合并到當前檔案

svn merge -r m:n path
例如:svn merge -r 200:205 test.php(將版本200與205之間的差異合并到當前檔案,但是一般都會產生衝突,需要處理一下)

12、SVN 協助

svn help
svn help ci

------------------------------------------------------------------------------

以上是常用命令,下面寫幾個不經常用的

------------------------------------------------------------------------------

13、版本庫下的檔案和目 錄列表

svn list path
顯示path目錄下的所有屬於版本庫的檔案和目錄
簡寫:svn ls

14、建立納入版本控制下 的新目錄

svn mkdir: 建立納入版本控制下的新目錄。
用法: 1、mkdir PATH...
2、mkdir URL...
建立版本控制的目錄。
1、每一個以工作複本 PATH 指定的目錄,都會建立在本地端,並且加入新增
調度,以待下一次的提交。
2、每個以URL指定的目錄,都會透過立即提交於倉庫中建立。
在這兩個情況下,所有的中間目錄都必須事先存在。

15、恢複本地修改

svn revert: 恢複原始未改變的工作複本檔案 (恢複大部份的本地修改)。revert:
用法: revert PATH...
注意: 本子命令不會存取網路,並且會解除衝突的狀況。但是它不會恢複
被刪除的目錄

16、程式碼程式庫URL變更

svn switch (sw): 更新工作複本至不同的URL。
用法: 1、switch URL [PATH]
2、switch --relocate FROM TO [PATH...]

1、更新你的工作複本,映射到一個新的URL,其行為跟“svn update”很像,也會將
伺服器上檔案與本地檔案合并。這是將工作複本對應到同一倉庫中某個分支或者標記的
方法。
2、改寫工作複本的URL中繼資料,以反映單純的URL上的改變。當倉庫的根URL變動
(比如方案名或是主機名稱變動),但是工作複本仍舊對映到同一倉庫的同一目錄時使用
這個命令更新工作複本與倉庫的對應關係。

17、解決衝突

svn resolved: 移除工作複本的目錄或檔案的“衝突”狀態。
用法: resolved PATH...
注意: 本子命令不會依文法來解決衝突或是移除衝突標記;它只是移除衝突的
相關檔案,然後讓 PATH 可以再次提交。

18、輸出指定檔案或 URL的內容。

svn cat 目標[@版本]...如果指定了版本,將從指定的版本開始尋找。
svn cat -r PREV filename > filename (PREV 是上一版本,也可以寫具體版本號碼,這樣輸出結果是可以提交的)From:http://hi.baidu.com/zxf5678766/blog/item/4617d3eb6785fe5379f05594.html
相關文章

聯繫我們

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