使用svn進資料列版本設定_win伺服器

來源:互聯網
上載者:User

我使用系統是: Microsoft Windows xp sp2

 

第一:下載軟體

有兩個軟體需要下載的:
Subversion和TortoiseSVN
Subversion 下載地址:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
TortoiseSVN下載地址:http://tortoisesvn.net/downloads

(有些文檔說必備軟體還有Apache,但這麼說法的大多是較舊的文檔這麼提到,隨著軟體的更新,已經沒有必要安裝Apache了,安裝Apache是為了SVN能幹更多事,比如可以基於HTTP去訪問等。)

軟體安裝完後需要重啟系統。

 

第二,建立服務和根目錄建立

建立svn的根目錄:例如在E盤建立檔案夾SVNRoot。

然後是建立svn服務:(這裡把svn服務建立為一個windows的服務)

在命令列下敲入:SC create svn1.5 binPath= "\"C:\Program Files\Subversion\bin\svnserve.exe\" --service --root \"E:\SVNRoot\"" depend= Tcpip start= auto
(第一塊紅色部分為subversion的安裝位置,第二塊紅色為剛才建立的SVN根目錄,注意:命令列中等號前不能有空格,等號後必須有空格)

運行後開啟windows的服務視窗檢查,如果有svn1.5這麼個服務,說明建立成功了,初次建立可能要手動啟動下(不然重啟動系統也可以,當然這裡沒有必要重啟系統)

 

第三:具體項目的建立和配置。

這裡假設我們有個項目DemoProject需要用svn來管理。

在E:\SVNRoot下建立檔案夾DemoProject。進入DemoProject,滑鼠在空白處點擊右鍵,選擇TortoiseSVN,再選擇Create repository here。操作完後可以看見本來空的檔案夾內多了些檔案和檔案夾。

現在可以來測試以上步驟是否正確,在F盤建立DemoProject(開發項目時的檔案夾),進入新建立的檔案夾,空白處點擊右鍵,選擇SVNCheckOut,Url repository填入svn://localhost/DemoProject,其他預設。點擊OK,(如果視窗Action有顯示Completed,那說明操作成功)。

這樣雖然可以訪問了,但是並沒有完成,我們需要設定檔的讀寫權限。這時我們進入E:\SVNRoot\DemoProject\conf。
裡面有三個檔案。預設裡面幾乎所有的代碼都被使用#注釋了。

接下去我們來修改這三個檔案來配置svn的驗證和授權。(請大家要區分驗證和授權)

首先是svnserve.conf檔案。
# anon-access = read把這行改成anon-access = none,表示禁止匿名訪問(注意:anon前面不能有空格)
# password-db = passwd把這行前面的注釋去掉,並刪除空格,表示驗證使用者使用passwd檔案。
# authz-db = authz把這行前面的注釋去掉,並刪除空格,表示授權使用authz檔案。

然後修改passwd檔案,部分檔案內容:
[users]
# harry = harryssecret
# sally = sallyssecret

我想看下這個檔案內容就應該知道作用了,這裡是配置svn的使用者名稱和密碼,這裡harry是使用者名稱,等號後面是使用者密碼,sally是另外一個使用者。當然這兩行代碼都是被注釋的。你可以刪除注釋啟用他們,也可以自己加一行,比如:
kate = 123456
這裡用的密碼是明文,如果你的項目安全要求較高,可以使用加密的密碼,配置比較麻煩,這裡不說了。還有使用者名稱之間可不可以有空格,使用者名稱和密碼的合法字元等,這些我沒做測試。


最後配置authz
第一個屬性節點是aliases,別名,不知道作用在哪,估計就是將同等許可權的許多使用者合并成一個名稱。我這裡沒有做修改。

第二個屬性節點groups,組別,這很好理解,就是把相同許可權的使用者合并入一個組,以便下面配置授權時更加簡潔。

下面的屬性節點都是目錄授權節點。
[/foo/bar]表示以下設定/foo/bar目錄下的授權。以下授權格式是: 使用者名稱|組別名 = rw | r,r是read的縮寫,表示有讀的許可權,w是write的縮寫,表示可寫入權限,rw表示可讀可寫。

如果在根目錄下配置使用[/]就可以了。


配置完成後,再次進入F:/DemoProject,在空白處滑鼠右鍵,選擇SVNUpdate,這時會彈出個視窗要求我們輸入使用者名稱和密碼,輸入在passwd檔案中配置的使用者名稱和密碼後就可以訪問了。

這樣一個項目就配置完成了。接下去就可以使用了。具體的Update, Commit等操作使用就不說了。

 

Two tips:

1.
我們習慣的懶惰的操作就是下班前整個項目commit,但事實是沒有必要把整個項目的所有檔案都提交給svn管理,甚至有些檔案提交後麻煩大大的。比如vs solution下的xxx.user檔案,這個提交後造成衝突幾乎是100%的。
解決的方法就是在在TortoiseSVN的Setting中設定Global ignore pattern值為“*/bin */obj *.bak *.*scc *.user *.suo *.gpState *.webinfo bin obj *.dll *.pdb *.exe Thumbs.db */TestResults”,這裡樣本的pattern主要針對使用Visual Studio的開發人員。

2.
在TortoiseSVN的Setting中勾選 Use "_svn" instead of ".svn" directories,某些時候(我不確定是那些時候).svn在windows系統會出錯。


 參考文章:

http://www.blogjava.net/zpuser/archive/2008/06/08/206654.html

Setting_up_a_Subversion_Server_under_Windows

 

 11月25更新:

如果你看不懂上面的文章,建議你使用可視化的配置軟體來配置subversion服務。介紹文章由本文的熱心評論網友提供:

http://www.cnblogs.com/ttzhang/archive/2008/11/06/1325940.html

(我看了這篇文章配置subversion,然後使用了VisualSVN Server來配置,確實很簡單!)

聯繫我們

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