Git Submodule 指定 Branch

曾經在 Git 專案引用其他 Repository 的作法(Git Submodule) 介紹過如何使用 Git submodule 來引用其他 repository 內容,最近同事在使用 Git submodule 時發現預設使用 master branch,問到該如何指定非預設的 master branch,順手紀錄一下

使用特定 branch 加入 submodule

  1. 使用指令

    • 語法

      git.exe submodule add -b {BranchnName} -- "{GitRepositoryURL}" "{FolderName}"
      
    • 指令範例

      git.exe submodule add -b NewBranch -- "http://github.com/yowko/TestSub-sub.git" "submodule"
      
  2. 使用 TortoiseGit

    • 在欲加入其他 repository 的資料夾中按右鍵 –> TortoiseGit –> Submodule Add..

      1subadd

    • 填入 Repository Url,Folder Name,Branch Name

      2urlbranch

參考資訊

  1. Git Submodule 用法筆記
  2. 7.11 Git Tools - Submodules
  3. git-submodule last updated in 2.14.2