git submodule的使用

昨天在github上clone了DTCoreText這個工程,編譯錯誤,缺少文件,后來發現是缺少了git submodule。


轉自:http://webfrogs.me/2013/03/20/git-submodule/

開發過程中,經常會有一些通用的部分希望抽取出來做成一個公共庫來提供給別的工程來使用,而公共代碼庫的版本管理是個麻煩的事情。今天無意中發現了git的git submodule命令,之前的問題迎刃而解了。

添加

為當前工程添加submodule,命令如下:

git submodule add 倉庫地址 路徑

其中,倉庫地址是指子模塊倉庫地址,路徑指將子模塊放置在當前工程下的路徑。

注意:路徑不能以 / 結尾(會造成修改不生效)、不能是現有工程已有的目錄(不能順利 Clone)

命令執行完成,會在當前工程根路徑下生成一個名為“.gitmodules”的文件,其中記錄了子模塊的信息。添加完成以后,再將子模塊所在的文件夾添加到工程中即可。

刪除

submodule的刪除稍微麻煩點:首先,要在“.gitmodules”文件中刪除相應配置信息。然后,執行“git rm –cached ”命令將子模塊所在的文件從git中刪除。

下載的工程帶有submodule

當使用git clone下來的工程中帶有submodule時,初始的時候,submodule的內容并不會自動下載下來的,此時,只需執行如下命令:

git submodule update --init --recursive

即可將子模塊內容下載下來后工程才不會缺少相應的文件。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 寫在前面: 1、使用Git Submodule可能遇到的坑(http://blog.devtang.com/201...
    Funnyer閱讀 5,908評論 0 0
  • 開發過程中,經常會有一些通用的部分希望抽取出來做成一個公共庫來提供給別的工程來使用,而公共代碼庫的版本管理是個麻煩...
    橙娃閱讀 517評論 0 0
  • 開發過程中,經常會有一些通用的部分希望抽取出來做成一個公共庫來提供給別的工程來使用,而公共代碼庫的版本管理是個麻煩...
    龍在阿里閱讀 616評論 0 0
  • 1.當工程開發的過程中,需要拿出一個公共的應用給其他工程使用,而公共庫的代碼管理是個麻煩的事,在這里就出現了 gi...
    forjie閱讀 330評論 0 0
  • 開發過程中,經常會有一些通用的部分希望抽取出來做成一個公共庫來提供給別的工程來使用,而公共代碼庫的版本管理是個麻煩...
    大明白閱讀 1,666評論 0 50