轉自:http://webfrogs.me/2013/03/20/git-submodule/git
開發過程當中,常常會有一些通用的部分但願抽取出來作成一個公共庫來提供給別的工程來使用,而公共代碼庫的版本管理是個麻煩的事情。今天無心中發現了git的git submodule命令,以前的問題迎刃而解了。web
爲當前工程添加submodule,命令以下:code
git submodule add 倉庫地址 路徑
其中,倉庫地址是指子模塊倉庫地址,路徑指將子模塊放置在當前工程下的路徑。
注意:路徑不能以 / 結尾(會形成修改不生效)、不能是現有工程已有的目錄(不能順利 Clone)開發
命令執行完成,會在當前工程根路徑下生成一個名爲「.gitmodules」的文件,其中記錄了子模塊的信息。添加完成之後,再將子模塊所在的文件夾添加到工程中便可。get
submodule的刪除稍微麻煩點:首先,要在「.gitmodules」文件中刪除相應配置信息。而後,執行「git rm –cached 」命令將子模塊所在的文件從git中刪除。it
當使用git clone下來的工程中帶有submodule時,初始的時候,submodule的內容並不會自動下載下來的,此時,只需執行以下命令:版本管理
git submodule update --init --recursive
便可將子模塊內容下載下來後工程纔不會缺乏相應的文件。module