Git Submodule的使用小技巧
在使用vim-pathogen来管理vim插件的时候,使用到了git
的submodule
方式来往bundle
文件夹中添加插件。下面就来介绍下submodule
的使用方法。
添加submodule
使用git submodule add [repository url] [放置的目录]
把submodule给弄到本地
1 | git submodule add git-url path/to/folder |
这时会多出一个叫.gitmodules
文件,里面记载的就是submodule的remote url
与目录地址
。
然后通过下面两个命令得到最新的submodule的代码
1 | git submodule init |
更新submodule
首先进入submodule所在目录,然后运行
1 | git pull origin master |
当有大量submodule需要更新的时候,一个一个进入目录显然不是好方法,我们可以通过下面的命令一次性更新多个submodule
1 | git submodule foreach 'git pull origin master' |
然后更新submodule
1 | git submodule update |
删除submodule
如果不想要某个submodule的话,相对添加操作来说,稍微多那么几个步骤。。。
1). 删除submodule所在目录
1 | git rm --cached [submodule目录] |
2). 删除.gitmodules
中该submodule的内容
3). 删除.git/config
中该submodule的内容
4). 提交修改
1 | git add .gitmodules |
是不是感觉有些麻烦,其实也有高级做法来着,只需要你这么做
1 | #删除submodule |
It’s work.