我正在嘗試使用GIT-SVN,但我有問題讓事情開始。我可以在沒有任何錯誤的情況下克隆svn-repository(或者使用git svn init,然後使用git svn fetch),但是在命令停止處理之後,git存儲庫是空的,並且沒有本地主分支。GIT-SVN克隆命令執行沒有錯誤,但本地主分支丟失
我的SVN倉庫坐落在這裏:
https://localhost:8443/svn/projects
而且項目文件夾的結構是這樣的:
/projectA/trunk
/projectA/branches
/projectA/tags
/projectB/trunk
/projectB/branches
/projectB/tags
(注意,分支和標籤,文件夾爲空,trunk-文件夾包含文件)。
我試圖克隆了projectA所以我用這個命令:
git svn clone --username myUsername https://localhost:8443/svn/projects/ gitFolder --trunk projectA/trunk --branches projectA/branches --tags projectA/tags
處理大約需要10分鐘,它所有的文件名輸出到屏幕上。最後一行是這樣的:
r233 = 2bfb031dda74e0ae8340688892197d647729b256 (refs/remotes/trunk)
現在,如果我切換到gitFolder輸入git的日誌,我得到: 致命:壞默認的修訂版「HEAD」。
git branches -a
報告如下:
remotes/trunk.
有一個在gitFolder但沒有別的一個git的文件夾。我也試圖去git svn init
和git svn fetch
而不是git svn clone
,但最終結果是一樣的。
任何想法發生了什麼?提前致謝。
更新:
剛剛意識到的最後一行(R233 = 2BF ...)必須指向版本號。所以最後處理的svn修訂版本是233.我多次重新測試了這個版本,並且git-svn clone始終在修訂版233之後停止。問題是原始svn存儲庫包含超過10100個修訂版本。我不確定爲什麼git-svn在應用之前停止,因爲沒有任何錯誤或警告。有沒有可以提供更多線索的日誌文件?
另一個更新:
我能解決我的問題。這是由VisualSVN(版本2.1.3)和Msysgit(版本1.7.0.2-preview20100309)之間的通信問題引起的。看起來,在某些時候,git-svn只是失去了與VisualSVN服務器的連接,並沒有顯示錯誤並關閉。從http協議切換到svn協議解決了這個問題。
使用SVN協議具有的VisualSVN是很容易的:
- 進入的的VisualSVN
- 類型的Bin文件夾 「的svnserve --daemon」
您可以檢查一切通過使用TortoiseSVN並將其指向您的存儲庫:svn:// localhost/repositories/myProject
作注,在它得到這部分的下載文件夾「無枝」,對我來說,意思是「不要運行git svn clone -s」(-s == --stdlayout)。運行它沒有「-s」然後它工作。怪異和混帳甚至沒有抱怨它只是創建了填充目錄... – rogerdpack 2013-01-25 17:26:15
你是從現有的svn目錄內部執行'git svn init'和'git svn fetch'嗎? – 2016-04-15 15:10:33