2013-09-26 117 views
2

好建議的結構,我創建具有以下命令的svn庫:在創建SVN倉庫

sudo mkdir /home/svn 
sudo svnadmin create /home/svn/odontonew 
sudo chown -R root:root odontonew/ 

最後,我需要創建推薦structred:樹幹,在我的「odontonew」標籤和分支夾。

所以,我的一個大問題是:我應該在odontonew文件夾內製作一個mkdir trunk tags branches或者我應該使用一些svn命令?如果有一些特殊的svn命令,它是什麼?

嗯,我想使用:sudo svn mkdir trunk,但我得到了錯誤:svn: E155007: '/home/svn/odontonew' is not a working copy

回答

0

你必須使用SVN命令來對信息庫

運行在庫項目中創建一個目錄:

svn mkdir --parents <REPO-URL>/<PROJ>/ -m "create project <PROJ>" 

要創建你可以做你的「初始導入」主幹 - 尚未版本 - 項目

svn import <PROJ> <REPO-URL>/<PROJ>/trunk -m "initial import project <PROJ>" 

現在,您可以創建branchestags目錄:

svn mkdir --parents <REPO-URL>/<PROJ>/branches -m "initial import project <PROJ>" 
svn mkdir --parents <REPO-URL>/<PROJ>/tags -m "initial import project <PROJ>" 

爲了讓您的本地項目版本,只是從樹幹做svn checkout

svn checkout --revision HEAD --depth infinity \ 
    --force <REPO-URL>/<PROJ>/trunk <PROJ> 

如果你以後想後,創建一個分支達到某種發展狀態,您可以使用svn copy commad將trunk複製到branches目錄

svn copy <REPO-URL>/<PROJ>/trunk <REPO-URL>/<PROJ>/branches/<_v_1.0_stable> \ 
    -m "create branche <PROJ_v_1.0_stable>" 
+0

當我執行命令:「sudo svn mkdir --parents odontonew -m =」創建項目odontonew「」,我得到了錯誤:svn:E205009:本地,非提交操作不要接收日誌消息或版本屬性 – Shelly

+0

@ user2776409 svn抱怨'mkdir'命令不需要消息,這是使用選項'-m'指定的部分,這實際上很奇怪,因爲[svn mkdir docs] (http://svnbook.red-bean.com/en/1.6/svn.ref.svn.c.mkdir.html)聲明它已被許可並且適用於我(我必須說我擁有1.7 svn客戶端) 。嘗試用空格替換'=',即''m「我的消息」'。如果它不起作用,那麼嘗試一下。你也必須指定版本庫的URL,你的版本庫是'/ home/svn/odontonew',你使用'svnadmin create ...' – A4L

+0

@ user2776409創建,如果'odontonew'是你的項目名稱,那麼它不是非常適合存儲庫名稱,當然你可以有一個專用於你的項目的存儲庫,但我不會建議這樣做。因爲你正在安裝服務器的同一臺機器上工作,所以你要使用文件protokoll作爲存儲庫url:'sudo svn mkdir --parents file:/// home/svn/odontonew/my_project -m「創建項目odontonew '。 – A4L

1

有兩種形式svn mkdir命令:

  • 的一個路徑上的工作:在這種情況下,假定這個路徑是工作副本內的變化將在稍後提交,因此沒有創建一個目錄
  • 了一個與URL工作時需要的信息:在這種情況下,該目錄是遠程創建並需要

提交信息。如果你想創建一個目錄遠程你應該通過什麼期待升網址(例如文件:// ...)

+0

所以,我找到了一個更好的方法來實現它:我創建了根存儲庫,並與我的IDE ECLIPSE連接,並從eclipse中創建了其他需要的文件夾,如:trunk,branches和tags。 – Shelly