我剛剛將一個存儲庫克隆到另一個存儲庫的子目錄中,而git實際上似乎非常智能地處理這種情況。我知道子模塊,但我認爲他們總是必須明確定義,我不認爲git有這個功能。發生了什麼?git如何將另一個存儲庫克隆到子目錄中?
這裏是我的shell會話:
https://gist.github.com/858131
我剛剛將一個存儲庫克隆到另一個存儲庫的子目錄中,而git實際上似乎非常智能地處理這種情況。我知道子模塊,但我認爲他們總是必須明確定義,我不認爲git有這個功能。發生了什麼?git如何將另一個存儲庫克隆到子目錄中?
這裏是我的shell會話:
https://gist.github.com/858131
它將其作爲嵌套存儲庫處理,而不是作爲子模塊處理。
當你發現了,聲明它作爲一個子模塊:
.gitmodules
文件(未測試)進行添加,將允許創建special entry in the git index referencing the submodule SHA1,因爲shown here和詳細的SO問題「Nested git repositories without submodules?」。
第二個倉庫被作爲第一庫的子模塊進行處理。由於您尚未將其定義爲子模塊,因此您無法使用git submodule
命令與其進行交互,但所有其他命令都將其視爲子模塊。
OK ...現在我已經將我的存儲庫置於此狀態,我該如何告訴'git submodule'將第二個存儲庫視爲子模塊? – jnylen 2011-03-07 06:21:02
@jnylen:'git submodule add git://github.com/tpope/vim-abolish.git bundle/vim-abolish' – Arrowmaster 2011-03-07 06:23:18
(通常只是添加子模塊)在我吹走了已經存在的東西之後才起作用。儘管夠了,謝謝。 – jnylen 2011-03-07 06:32:20