submodule是git的一个很方便的功能,对于像笔者这样的更新强迫症患者绝对是个福音。将Github上的项目作为submodule添加到自己的项目中后,能够很方便地进行更新。
本文是我在git submodule使用过程中积累下的几个简单用法,放在这儿留档的同时分享给大伙儿看一下~
- 添加submodule
很简单,一句命令即可
git submodule add git://yourhost/repo.git Externals/repo
- 删除submodule
相对于添加略微烦一点,按照如下步骤即可:
先在git中删掉这个submodule
git rm —cached Externals/repo
rm -rf Externals/repo
接着修改.gitmodules,删掉当中对应于这个submodule的部分
vim .gitmodules
接着修改.git/config
vim .git/config
修改完成之后理论上submodule就从当前的工作目录消失了,于是commit一下
git add .gitmodules
git commit -m “Farewell my submodule”
还不放心就同步一下
git submodule sync
- 更新submodule
很简单,先cd到需要更新的submodule
cd Externals/repo
然后pull一下
git pull origin master
完事
当然,一般而言一个项目是绝对不可能只用到一个submodule的,下面这个命令可以事半功倍:
git submodule foreach git pull origin master
当然还有很多其它的办法,欢迎分享~