git submodule
給專案增加submodule
git submodule add https://github.com/chaconinc/DbConnector
———————
克隆主專案時預設不會將submodule一起克隆
克隆主專案後,需要:
git submodule init
git submodule update
或者:
主專案克隆時直接把submodules一起克隆
git clone –recurse-submodules https://github.com/chaconinc/MainProject
———————
從遠端獲取更新
進入submodule,
git fetch
git merge origin/master
配置git pull時同時拉取submodule(全域性)
git config –global submodule.recurse true
自動合併,預設是master分支,如果不加merge 或rebase,會指向一個detached ID:
git submodule update –remote
git submodule update –remote –merge
git submodule update –remote –rebase
不使用master ,使用其他分支更新,比如dev分支
git config -f .gitmodules submodule.DbConnector.branch dev
git submodule update –remote
————————
git diff 時同時顯示submodule的差異:
git config –global diff.submodule log
————————
刪除: git submodule deinit –force usr/plugins/BaiduSubmit
————————
push:
主專案push時把module也自動push
git push –recurse-submodules=on-demand
或者配置
git config push.recurseSubmodules on-demand
不自動push,僅提示
git push –recurse-submodules=check
git config push.recurseSubmodules check
僅push module,不push主專案
–re