2017-09-25 81 views
1


我只需運行一個命令git clone --recursive <repo>克隆與子模塊回購的問題,它克隆回購協議,但未能克隆子模塊的時候。該錯誤消息是Git的克隆/子模塊收到錯誤「是外界庫」

fatal: C:\Users\folderJobs: 'C:\Users\folderJobs' is outside repository

folderJobs是這個回購的前一個文件夾的名字,我沒那個時候有子模塊。

背景
我有用於同步從機A碼到機器B回購,機器B是與作業調度程序的服務器運行腳本形成幾個項目。我以前手工維護一個server_scripts項目,它是來自不同項目的所有腳本的集合。這不是一個完美的方式,因此我決定在此server_scripts項目中將所有項目添加爲子模塊。我想每個我需要更新到最新版本的腳本,只需要運行

git submodule update --recursive --remote

我在機器A(我的工作站)上做了這些更改,然後我到機器B,刪除了folderJobs,因爲我想克隆一個全新的副本。我刪除folderJobs後運行git clone --recursive。以前的文件夾名稱與項目名稱不同,但是這次我將使用與項目名稱相同的文件夾名稱。

我在我的機器A上嘗試了相同的命令,它爲我的文件系統的不同位置工作。

問題

我想clone命令是創建回購一個全新的文件夾,但它似乎Git記得在我的機器B.東西

有沒有人得到同樣的錯誤消息時克隆?花了半天的Google搜索後,我不知道如何解決它。

感謝您的任何信息。

- 信息

1>我查了Git版本兩種機器,小的差異,是什麼原因呢?

$ git --version 
git version 2.14.1.windows.1 

$ git --version 
git version 2.12.2.windows.1 

2>我試圖在其他文件夾B機,同樣的錯誤

回答

0

運行的命令,但它似乎Git的記憶在我的機器B.東西

雙 - 檢查您的倉庫中.gitmodules文件的內容:您不需要任何絕對路徑。

請確保您還沒有隱藏的.git文件夾已經存在於C:\ Users中。

+0

嗨VonC,感謝您的建議。我檢查了'.gitmodules',只有兩個遠程回購地址。上部文件夾中沒有'.git'。 –

+0

@ZhongDai你可以檢查兩個系統上'git config -l'的區別嗎? – VonC