git submodule

其实用git的时间还是挺久的,但竟然不晓得git的子模块,瞬间有种”问今乃何世,不只有汉,无论魏晋“的赶脚,羞的老脸发红。

应用场景

  • 剥离代码公共部分。

工作中,每个人或公司在长时间的coding中都形成常用的代码工具库,将这些公共部分剥离出来,做单点维护。

  • 间接的实现目录权限的管理。

git没有更细的权限管理功能,如果希望对某些文件夹实现权限管理,从而在团队合作中,只需要关注或维护自己关注的文件夹就ok了。

如何使用

子模块使用起来比较简单,他即可以看做一个子模块,也可以看做一个完整的git工程,原来的git命令在子模块下照常使用。

添加子模块

进入到主目录执行

git submodule add 地址

查看执行后的状态,会发现主目录下多了一个.gitmodules文件和一个git工程

git status

提交子模块(和普通提交修改一样)

git commit -m xxx

通常作为公共部分最重要的是获取更新,有两种方式

  • 首先在主目录下直接获取所有子模块
git submodule foreach git pull

-在主目录下更新子模块

git pull
git submodule update
  • 在子模块下获取更新(就是一个普通的git工程)
git pull

首次clone带有子模块的工程,也有两种方式

  • 使用--recursive递归参数,一哈子都clone下来了
git clone 地址 --recursive
  • 分部获取,现获取主目录,在初始化子模块(推荐,条理清楚)
git clone 地址
git submodule init
git submodule update

删除子模块(把模块的两个文件删了就得了)

转载于:https://my.oschina.net/u/1249401/blog/823358

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值