2014-03-31 49 views
0

在工作中,我們有一個用起來有些標準的文件夾結構,看起來像下面的svn庫:的git - svn的結帳檢查文件出錯誤的文件夾

remote-repo/ 
    tags/ 
    branches/ 
     branch_to_proj1_A/ 
     proj_1_1 
     proj_1_2 
    trunk/ 
     proj1/ 
     proj1_A/ 
      proj1_1 
      proj1_2 
     proj2/ 
     proj3/ 

我做一個git - svn的克隆後(使用-s選項)我得到以下籤出的文件夾結構

local-gitsvn/ 
    proj1/ 
     proj1_A/ 
     proj1_1 
     proj1_2 
    proj2/ 
    proj3/ 

現在我感興趣的是與SVN分支「branch_to_proj1_A」別人創建工作。看起來這是隻對文件夾proj1_A分支......因此,我做

$ git-svn checkout -b local-branch_to_proj1_A branch_to_proj1_A 

結賬後,我在混帳回購協議下的文件夾結構

local-gitsvn/ 
    proj1_A/ 
     proj1_1 
     proj1_2 

注意的休息項目不見了,只有proj1_A在那裏。

我的問題是,是否有可能將分支簽出到正確的文件夾?所以在'git svn checkout'之後,我得到了與原始克隆回購中相同的文件夾結構?

感謝您的幫助!

回答

0

如果你不關心synching回SVN,你可以做子樹合併:

有主幹/主(或一些更具體的修改)簽出:

git subtree merge --prefix=proj1/proj1_A branch_to_proj1_A

合併成功後,您將從branch_to_proj1_A合併到完整目錄中進行更改。