2015-11-19 626 views
0

我試圖更新我在Windows 7中的項目上的子模塊,但git不響應任何內容。git submodule不起作用

有包含路徑的.gitmodules文件等

當我運行git submodule initgit submodule update沒有任何反應。我沒有得到任何輸出。另外git submodule status什麼都不給。

當我嘗試添加現有的子模塊時,出現一個它已經存在的錯誤。

提到我使用1.9.5.msysgit這是嵌入式的SourceTree git版本可能是有用的。

更新

而且SourceTree不顯示子模塊要麼。

+0

'git status'工作嗎?這可能是一個控制檯問題。 – Kenney

+0

是的,它工作得很好。 – ipinak

+0

'git status'的輸出是什麼 – houtanb

回答

0

我發現問題所在。子模塊的名稱與路徑不匹配(基於.gitmodules),顯然如果它們不匹配,git無法識別它。

因此,這是正確的

[submodule "lib/name"] 
    path = lib/name 
    url = ... 

這不是

[submodule "lib/name1"] 
    path = lib/name 
    url = ... 

我想有人手動創建的.gitmodules,這就是爲什麼我有這個問題。

+0

如果'git子模塊添加https:// gitlab.com/some/name1.git',然後將其重命名爲'git mv name1 name',那麼'.gitmodules'看起來像這樣。 –