酷知百科網

位置:首頁 > 遊戲數碼 > 互聯網

svn如何安裝,svn如何配置,svn安裝配置

互聯網1.86W

svn(subversion)是近年來崛起的版本管理工具,是cvs的接班人。目前,絕大多數開源軟件都使用svn作爲代碼版本管理軟件。如何快速建立Subversion服務器,並且在項目中使用起來,這是大家最關心的問題,與CVS相比,Subversion有更多的選擇,也更加的容易,幾個命令就可以建立一套服務器環境,
本文是使用Subversion最快速的教程,在最短的時間裏幫助您建立起一套可用的服務器環境,只需略加調整就可以應用到實際項目當中。
本教程分爲以下幾個部分,爲了說明簡單,教程是在windows下使用的方式,以方便資源有限的項目使用。在UNIX環境下,只是安裝方式不同,命令執行並無太大區別。

操作方法

(01)軟件下載<1>、下載Subversion服務器程序到官方網站的下載二進制安裝檔案,來到二進制包下載部分,找到 Windows NT, 2000, XP and 2003部分,然後選擇Apache 2.0 或者 Apache 2.2,這樣我們可以看到許多下載的內容,目前可以下載 。<2>、下載Subversion的Windows客戶端TortoiseSVN。TortoiseSVN是擴展Windows Shell的一套工具,可以看作Windows資源管理器的插件,安裝之後Windows就可以識別Subversion的工作目錄。官方網站是TortoiseSVN,下載方式和前面的svn服務器類似,在Download頁面的我們可以選擇下載的版本,目前的最高穩定版本的安裝檔案爲。

(02)svn服務器和客戶端安裝<1>、安裝Subversion,直接執行 ,根據提示安裝即可,這樣我們就有了一套服務器可以執行的環境。<2>、安裝TortoiseSVN,同樣直接執行按照提示安裝即可,不過最後完成後會提示是否重啓,其實重啓只是使svn工作拷貝在windows中的特殊樣式生效,與所有的實際功能無關,這裏爲了立刻看到好的效果,還是重新啓動機器。<3>、安裝svn的客戶端程序,需要的話還可以安裝svn的語言包,注意語言包的版本也必須與客戶端程序的版本一致

(03)建立版本庫(Repository)執行Subversion服務器需要首先要建立一個版本庫(Repository),可以看作服務器上存放數據的數據庫,在安裝了Subversion服務器之後,可以直接執行,如:svnadmin create E:svndemorepository就會在目錄E:svndemorepository下創建一個版本庫。我們也可以使用TortoiseSVN圖形化的完成這一步:在目錄E:svndemorepository下"右鍵->TortoiseSVN->Create Repository here...“, 然後可以選擇版本庫模式, 這裏使用默認即可, 然後就創建了一系列目錄和檔案。

svn如何安裝,svn如何配置,svn安裝配置

(04)SVN配置用戶和權限來到E:svndemorepositoryconf目錄,修改:# [general]# password-db = passwd改爲:[general]password-db = passwd然後修改同目錄的passwd檔案,去掉下面三行的註釋:# [users]# harry = harryssecret# sally = sallyssecret最後變成:[users]harry = harryssecretsally = sallyssecret在passwd檔案中,“=”前的字元就是用戶名,後面的就是密碼。還要注意“[users]”前面的註釋“#”一定要刪除掉。

svn如何安裝,svn如何配置,svn安裝配置 第2張

(05)執行獨立服務器在任意目錄下執行:svnserve -d -r E:svndemorepository 我們的服務器程序就已經啓動了。注意不要關閉命令行視窗,關閉視窗也會把svnserve停止。

(06)初始化匯入來到我們想要匯入的項目根目錄,在這個例子裏是E:svndemoinitproject,目錄下有一個檔案:右鍵->TortoiseSVN->Import...在URL of repository輸入“svn://localhost/trunk”在Import Message中輸入你的日誌資訊完成之後目錄沒有任何變化,如果沒有報錯,數據就已經全部匯入到了我們剛纔定義的版本庫中。需要注意的是,這一步操作可以完全在另一臺安裝了TortoiseSVN的主機上進行。例如執行svnserve的主機的IP是,則URL部分輸入的內容就是“svn://”。

svn如何安裝,svn如何配置,svn安裝配置 第3張

(07)基本客戶端操作取出版本庫到一個工作拷貝:來到任意空目錄下,在本例中是E:svndemowc1,執行右鍵->Checkout,在URL of repository中輸入svn://localhost/trunk,這樣我們就得到了一份工作拷貝。在工作拷貝中作出修改並提交:開啟,作出修改,然後右鍵->Commit...,這樣我們就把修改提交到了版本庫,我們可以執行。察看所作的修改:上右鍵->TortoiseSVN->Show Log,這樣我們就可以看到我們對這個檔案所有的提交。在版本1上右鍵->Compare with working copy,我們可以比較工作拷貝的檔案和版本1的區別。最後,所有的內容都已經錄製爲動畫檔案,大家可以參考。關於本教程大家有什麼意見,可以這裏討論 。如果更新檔案以後,有兩個人或者多個人同時修改了某個檔案的某個位置,是否衝突,(一般不會這樣子,因爲上傳的版本是可以編譯透過的,而且每個人負責自己的模組,不會多人獨立修改同一個檔案,別人也是先更新,後上傳修改,,,,)開發者習慣性動作。早上上班第一件事就是更新svn版本庫,再開始一天的工作。晚上下班,或者其他時候要上傳東西可以直接上傳因爲你負責的東西沒人去修改。衝突是怎麼產生的呢:因爲不同的人,同時修改了同一個檔案的同一個地方,這個時候,他提交了,你沒有提交,你就提交不了,這個時候,你要先更新,更新就會出現代碼衝突問題。最好不要多人同時修改一個檔案,公用的檔案,更改之前要和大家溝通一下,或者解決衝突 呵呵先更新,沒有衝突,再提交。有衝突,解決衝突再提交。否則也提交不了。對於一些處於衝突狀態下的檔案 ,右鍵TortoiseSVN ->Resolved,解決衝突。解決衝突: 更新-解決衝突-刪掉以下三個檔案-提交(如果自己沒有修改的檔案有衝突,刪除再更新即可,自己修改的檔案解決衝突)   是衝突前自己的檔案.版本號   是衝突前本地的版本檔案.服務器的版本號   是衝突後服務器版本檔案

特別提示

如果修改檔案後提交不了,大多是因爲版本不一致造成的。更新一下,不產生衝突的情況,就可以提交了。

更新檔案,如果出現衝突的情況,開啟衝突檔案會看到類似以下的內容<br/>&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;<br/>asdfadfadfadf<br/>11111111111111<br/>=======<br/>asdfadfadfadf<br/>111111111111111<br/>222222222222<br/>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br/>結合別人修改的內容和自己修改的內容,然後把檔案中的&lt;&lt;&lt;&lt;&lt;,=====,&gt;&gt;&gt;&gt;&gt;&gt;&gt;這類衝突符號去掉。去掉後,還是不能提交的,爲什麼?因爲衝突時會產生三個檔案,有這三個檔案存在肯定提交不了。<br/>客戶端用的tortoisesvn(這個估計程序員用的最多),衝突時會多產生,三個檔案<br/>   是衝突前自己的檔案<br/>.版本號   是衝突前本地的版本檔案<br/>.服務器的版本號   是衝突後服務器版本檔案<br/>提交的時候,把這三個檔案刪除掉就可以提交了。

產生覆蓋的原因。<br/>a),在修改衝突檔案時,把別人代碼都刪除掉了,只留下了自己的代碼。這樣就會產生覆蓋了。<br/>b),把中的內容直接copy到檔案,這樣也會產生代碼覆蓋。<br/>上面二種情況都是我親眼看到新手這樣操作的,要避免這二種操作方法。

標籤:SVN 安裝 配置