首页 > 其他分享 >githu中的子模块(git submodule)

githu中的子模块(git submodule)

时间:2024-05-11 16:54:14浏览次数:24  
标签:Git git fltk githu -- submodule 模块

git中支持引用另外一个开源库,并且可以指定依赖的分支或者提交记录号。

比如fltk-rs 库的fltk-sys模块依赖了库 cfltk 并指明了依赖的提交是 8a56507
image

甚至可以嵌套,毕竟库自身也不知道自己给别人当了子。比如上面这个 cfltk 又依赖了 fltk @ 324fcfc
image

但是如果你单纯使用git clone {url} 去拉取代码,嵌套的库并不会被克隆下来,这样你本地编译免不了失败。

应该怎么做呢?

使用Git Submodules机制,可以将一个Git仓库作为另一个Git仓库的子目录使用。

以下是使用Git Submodules的详细步骤:

在主仓库中添加子模块

git submodule add https://github.com/user/repo

这将从给定的URL创建一个子模块,并将其添加到主仓库中。

初始化并更新子模块

git submodule update --init --recursive

这个命令将初始化子模块并拉取其内容,包括嵌套的子模块。

更新子模块到最新的代码

git submodule update --remote

递归地更新所有子模块

git submodule foreach git pull origin master

删除一个子模块

git submodule deinit -f <submodule_path>  
git rm -f <submodule_path>  
git commit -m "Remove submodule <name>"

标签:Git,git,fltk,githu,--,submodule,模块
From: https://www.cnblogs.com/somefuture/p/18186756

相关文章

  • git上传
    一、初始化gitgitinit二、添加该文件夹下的所有文件到本地仓库gitadd.三、添加注释gitcommit-m"RuoYi-Cloud-3.6.4"四、添加远程仓库4.1复制远程仓库https://gitee.com/gitee-libotao/RuoYi-Cloud4.2建立本地仓库与远程仓库的关联gitremoteaddoriginhtt......
  • Git -- 修改git账号密码后,进行git提交时报错
    修改git账号密码后,进行git提交时报错$gitpushorigindevelopremote:HTTPBasic:Accessdeniedfatal:Authenticationfailedfor'http://xxx/web.git/'重新设置下git信息gitconfig--globaluser.name"yourname"gitconfig--globaluser.email"your......
  • git文档
    git常用命令。创建SSHKeyssh-keygen-trsa-C"[email protected]"配置用户信息gitconfig--globaluser.name"YourName"gitconfig--globaluser.email"[email protected]"仓库在当前目录新建一个Git代码库gitinit新建一个目录,将其......
  • Copilot - OpenAI与GitHub联合出品的自动代码生成AI+VirtualLCD - 可用于 GUI 移植的
    1、AntOS-适用8051的超轻量级实时操作系统AntOS是一款超轻量级实时操作系统,抢占式调度极简内核,专门为小型家电及轻量型物联网终端设计,适合在8051为内核的MCU上运行。项目主页: https://gitee.com/zeweni/ant-osAntOS提供层级服务,可以进行任意裁剪。内核层包含两个子系......
  • Digital story
    Onceuponatime,thereisawillingcouple.Itisapitythattheywantababy,buttheirwishnevercometrue.Standingbehindthecouple’shouse,agardenbelongingtoapowerfulwitchisalwayssurroundedwithtallwallpreventingothersfromhere.On......
  • ssh修改端口后,gitee(git)连接不上
    将本服务器的ssh端口22改为1068后,gitpull和gitpush时,出现:ssh:connecttohostgitee.comport[端口]:Connectiontimedout错误目测是因为,gitee的链接,使用的是SSH协议,但是服务器的端口由22变为了1068,所以请求gitee服务器时,也由22变更为了1068,所以只要SSH协议的链接加上22......
  • git多人开发常常遇到的情况之一
    git开发过程中常常遇到冲突冲突的原因项目分支master生产环境发版使用分支uat(同master)预发版分支与master同步dev测试环境发版使用分支feature_功能开发分支hotfix_bug开发分支平时开发过程先拉到uat创建feature_或hotfix_分支开发完......
  • Connecting to github.com (github.com)|20.205.243.166|:443... failed: Connection
    今天使用ubuntu虚拟机编译buidroot代码时出现一些压缩包无法从github下载,如下图: 可是拷贝上图log中的下载链接到windows浏览器进行打开会自动进行下载成功,如粘贴该链接 https://github.com/winshining/nginx-http-flv-module/archive/v1.2.8/nginx-http-flv-......
  • 使用Jekyll在GitHub上搭建个人网站教程
    一、前言Jekyll是一个简单的、博客感知的、静态站点生成器。它使用Markdown(或其他标记语言)来格式化文本,然后通过Liquid模板引擎来布局网站,最后生成一个完整的静态网站。GitHubPages则允许你在GitHub上直接托管你的网站,并且可以与Jekyll完美结合。下面我们就来详细介绍一下如何使......
  • Git学习——迁移单一仓库至其他代码托管平台
    目录简介流程总结简介因需迁移单一代码仓库至其他代码托管平台,要迁移的包括仓库内容以及所有历史记录和推送日志。本文中的方法同样适用于在同一代码托管平台中克隆仓库。流程1.创建新仓库:在目的平台的指定位置创建一个新的仓库(目的仓库),用于接收克隆的数据。2.克隆旧仓库......