2013-01-06 31 views
1

下載整個Subversion存儲庫(即存儲庫本身)的命令是什麼?我知道它不是svn checkout,因爲它只下載頭部修訂版。我正在尋找類似於git clonehg clone的東西。如何下載SVN信息庫?

+0

AFAIK,這不是通過客戶端界面提供的功能。 –

+2

看看svnsync或svnrdump命令 –

回答

2

相反與git或HG,SVN不是分佈式版本控制系統。無法下載存儲庫本身。

如果你沒有下載它(通過FTP等)就沒有辦法合併與原來的回購的變化。

+0

你錯了「沒有辦法下載存儲庫本身」。 'svnsync'和'svnrdump'允許複製一個遠程倉庫。 – bahrep

+0

當然你可以複製它(正如我在第二段中所說的那樣),但我會爭辯說這不是「類似於gg clone of hg clone」。這更像是一個傳統的備份,其用處非常有限。 – Chris

6

正如@克里斯說,SVN不是一個分佈式版本控制系統,所以下載整個倉庫的東西相對較少做,是沒有必要的普通用戶。通常,用戶只需執行svn checkout

,但提供的該公用事業的,也就是說,一個備份機制的一部分。

歷史上svnadmin dump命令將被使用。這假定你有本地文件訪問權限本身(例如,不只是svn + ssh:\\或http:\\)。該命令會將指定修訂範圍(例如。-r1:HEAD)中的每個提交的詳細信息轉儲到標準輸出。 然後可以使用svnadmin load命令,使用此文件來填充另一個存儲庫。 有關使用詳情,請參閱svn book

此外,在顛覆的1.7版本的轉儲程序被引入,這是網絡感知,稱爲svnrdump。這會創建與上述svnadmin dump命令相同的轉儲格式文件。 有關詳細信息,請再次參閱svn book

+0

'svnrdump'可以做什麼?它是否重新創建SVN存儲庫而不需要管理權限或本地文件訪問權限? – Melab

+1

@Melab - ''svnrdump''只會創建一個轉儲文件。然後你可以使用''svnadmin load''來使用該轉儲文件來填充本地文件系統上的一個空的存儲庫。您仍需要本地文件訪問才能創建存儲庫。 –

+0

那麼,如何將其與Google代碼上託管的SVN存儲庫一起使用? 'svnrdump轉儲https:// .googlecode.com/svn /'? 'svnrdump轉儲https:// .googlecode.com/svn/trunk /'? – Melab