更新子模組
子模組引用另一個儲存庫中的特定提交。要檢查所有子模組引用的確切狀態,請執行
git submodule update --recursive
有時,而不是使用引用的狀態,你希望更新到本地檢出到遠端上該子模組的最新狀態。要使用單個命令檢出遠端控制器上所有子模組的最新狀態,你可以使用
git submodule foreach git pull <remote> <branch>
或使用預設的 git pull
引數
git submodule foreach git pull
請注意,這隻會更新你的本地工作副本。執行 git status
會將子模組目錄列為髒,如果它由於此命令而更改。要更新儲存庫以引用新狀態,你必須提交更改:
git add <submodule_directory>
git commit
如果你使用 git pull
,可能會有一些可能會發生合併衝突的更改,因此你可以使用 git pull --rebase
將更改倒回到頂部,大多數時候它會降低衝突的可能性。它還將所有分支拉到本地。
git submodule foreach git pull --rebase
要檢查特定子模組的最新狀態,你可以使用:
git submodule update --remote <submodule_directory>