2010-12-02 49 views
6

我正在使用git來顛覆橋檢查subversion版本庫。起初,我用這個命令,Git使用Subversion橋下載trunk

get svn clone -s svn://repositoryName/etc 

但是我們顛覆存儲庫是巨大的,多年的發展,許多樹枝等的

的後果是,過程中經常死了,當它被壓縮庫內存使用量超過1.5 GB,並且死亡。

所以我想也許我會試試看,因爲這是我將主要使用的主幹。所以我試過這個,

get svn clone -trunk svn://repositoryName/etc 

但是我得到一個錯誤,在模式匹配中使用未初始化的值。

有人可以告訴我正確的命令只用於檢查中繼線。還有一個已知的錯誤/內存泄漏?我在Windows上使用Git 1.7.3.1-preview20201002版本。

是否有官方文檔的git和命令行選項?

回答

13

這應該工作:

git svn clone svn://repositoryName/whatever/trunk 

的--trunk選項是不是你要找的東西。這是一種指定通常稱爲「trunk」的目錄名稱的方法。例如,如果你的svn版本庫在主開發中使用「/ main」,可以使用「/發佈」而不是「/ tags」和「/ other」而不是「/ branches」,而不是使用-s( - 標準)選項:

git clone --trunk=main --tags=releases --branches=other svn://repositoryName/whatever 

然而,一個更好的選擇可能是克隆庫起始於特定SVN版本號:

git svn clone -r 20000 svn://repositoryName/whatever 
cd whatever 
git svn rebase 

clone -r 20000將只克隆SVN版本號20000,然後git svn rebase將取並在20000之後應用所有修訂版,所以您將留下一個具有從修訂版20000開始的歷史記錄的git存儲庫。

手冊頁是最適合文檔的地方。如果你沒有安裝它們,kernal.org的副本格式很好:http://www.kernel.org/pub/software/scm/git/docs/。谷歌搜索「man git svn」將快速顯示相關頁面。

+0

謝謝,你的建議非常感謝。 – peter 2010-12-03 00:04:19