【git】添加子模块(submodule)

文章介绍了如何使用Git子模块(submodule)来管理第三方开源代码,如freertos和tinyusb。通过添加子模块,可以确保本地仓库与上游代码保持同步。添加步骤包括运行`gitsubmoduleadd`命令,提交更改,然后使用`gitsubmoduleinit`,`sync`和`update`命令来管理和同步子模块。
摘要由CSDN通过智能技术生成

git添加子模块(submodule)

背景

有时候自己的项目需要用到别人的开源代码,例如 freertostinyusb

这个时候有两种选择

  • 将开源的代码下载下来放到自己的 git 中管理
    • 缺点:如果远端仓库更新,自己仓库的代码不会更新
  • 将开源代码通过子模块(submodule)的形式加入到自己的仓库中
    • 优点:自己仓库代码时刻和上游代码保持更新

子模块(submodule)添加方法

例如需要将 tinyusb 开源代码添加到自己的代码仓库中

  1. 进入你想将 tinyusb 添加到的目录
  2. 在该目录下执行
    git submodule add https://github.com/hathach/tinyusb.git
    
    上述命令执行之后会将对应的 submodule 代码下载下来。
    这时在仓库的根目录会有新增一个 .gitmodules 文件
  3. 提交子模块到远程仓库
    git add .
    git commit -m "add submodule project"
    git push
    
    到这里 tinyusb 子模块就添加到自己的仓库了,
    效果图如下:
    在这里插入图片描述
    这里点击一下蓝色字体就可以跳转到对应的仓库

子模块(submodule)同步问题

git submodule init
git submodule sync
git submodule update

项目地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值