2014-01-29 147 views
5

我正在從Perforce遷移到git,並且在這個過程中我試圖讓文件結構正確。git p4克隆沒有文件

目前Perforce的結構是這樣的:

//depot 
    /android 
     /main 
     /other_branches 
     /core_library 
      /main 
      /other_branches 

,我在拍攝的git這樣的事情:

/android 
/core_library 

設置我的客戶規格查看如下(我後面會擔心分支):

//depot/android/main/... //p4-git/android/... 
//depot/android/core_library/main/... //p4-git/core_library/... 

溫我跑下面,完整的提交歷史出現,但沒有文件。

set P4CLIENT=p4-git 
git p4 clone --use-client-spec //p4-git/@all 
+0

如果您可以在問題中包含客戶端規範,它可能會很有用。 –

+0

@DouglasLeeder加了 – keyboardr

+0

另外,如果我'git p4克隆// depot/android/main @ all',所有東西都按預期顯示出來,只是沒有我想要的文件結構。 – keyboardr

回答

1

的問題是在這條線:

git p4 clone --use-client-spec //p4-git/@all 

在這裏,我們通過客戶端路徑(//p4-git),但混帳-P4需要一個倉庫路徑。這會在嘗試將Perforce軟件倉庫路徑映射到Git路徑時導致問題。嘗試運行

git p4 clone --use-client-spec //depot/android/main/@all 

改爲。

請記住,如果您指定--use-client-spec,git-p4將自動使用您的客戶端規範,無論那一個是哪一個。它也會記住這個選擇並將其用於將來的git-p4命令。這可能是一個好主意:

  • 創造的git-P4工作專用的客戶端
  • 確保每當你使用git-P4
  • 避免改變你的git-的觀點P4CLIENT設置爲這個客戶端p4客戶端