https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97

git submodule update --init --recursive

1.为当前仓库添加子模块

1.1 添加submodule-git submodule add ***

(1)示例-git submodule add https://github.com/chaconinc/DbConnector;

(2) 可以添加多个submodule;

1.2 查看添加submodule后的状态-git status

(1) 注意.gitmodules文件的引入;

1.3 对比添加submodule前后的不同-git diff --cached ***或git diff --cached --submodule

(1) 示例-git diff --cached DbConnector;

1.4 提交改动-git commit -am 'commit message info'

1.5 推送更改-git push origin master

2.克隆含有子模块的项目

2.1 git clone *** (***为含有子模块的项目)

(1) 示例-git clone https://github.com/chaconinc/MainProject;

(2) 此时,clone下来的项目中虽然包含子模块目录,但是子模块目录是空的;

2.2 git submodule init-初始化本地配置文件

2.3 git sumodule update-从项目中抓取所有数据并检出父项目中列出的合适的提交

(1) 此时,子目录中的内容已经抓取下来了;

注意:2.1,2.2和2.3可用git clone --recurse-submodules *** (***为含有子模块的项目)代替;

【git】git子模块操作-添加子模块与克隆子模块的更多相关文章

  1. git中submodule子模块的添加、使用和删除

    git中submodule子模块的添加.使用和删除   原文链接:https://blog.csdn.net/guotianqing/article/details/82391665背景项目中经常使用 ...

  2. Git基本命令行操作 (转)

    Git远程操作详解   作者: 阮一峰 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和 ...

  3. Git Submodule简单操作

    基于组件的项目很多,但是如果直接用包的方式直接引用到项目中,如果出现问题很难进行调试的操作,也很难进行组件的优化和管理,所以写了一篇文章来介绍下git submodule的用法,用submodule可 ...

  4. git-submodule子模块的添加、使用和删除

    目录 添加 使用 更新 删除 hugo添加主题的时候 命令如下: git submodule add https://github.com/samrobbins85/hugo-developer-po ...

  5. 使用git向github中添加项目并更新(备忘录)

    今天使用Git&github&ST3时,发现ST3不仅是git插件不能push成功,使用sublimegit插件也不行. 可能是没有掌握sublimegit的使用技巧,有待后续继续摸索 ...

  6. Linux搭建GIT 使用Eclipse创建并上传Git项目 EGit操作

    Linux搭建Git 1. gitblit服务器文档 http://gitblit.com/setup_go.html 2. 安装jdk 参考 http://blog.csdn.net/jerome_ ...

  7. Git 基本命令行操作

    一.本地仓库操作 1.初始化    git init 2.添加版本控制文件    git add README.md3.本地提交    git commit -m “1st commit”4.配置远程 ...

  8. Git的简单操作

    一.Git安装 windows下,可在在git官网下载(https://git-scm.com/downloads) 也有360提供的git(http://baoku.360.cn/soft/show ...

  9. git命令合集及github的克隆推送

    安装git 初始化仓库 提交相关 撤销相关 远程推送 分支相关 其他 遇到的错误 github的克隆上传 此文章只是对命令的一个统计,起备忘和复习git只是的作用,不建议从没接触过git的同学通过它来 ...

  10. Mac下Git的基础操作

    目前最火的版本控制软件是Git了吧,今天简单梳理一下Mac下Git的基础操作~~ 一.什么是Git Git是一个分布式代码管理工具,用于敏捷的处理或大或小的项目,类似的工具还有svn. 基于Git的快 ...

随机推荐

  1. unity 单元测试

    unity 单元测试 Created: February 23, 2023 11:11 PM Tags: C语言, stm32, 单元测试 概述 为了方便在stm32上进行单元测试,需要在项目中导入u ...

  2. kubebuilder简明教程

    一.operator概述 Operator 是 Kubernetes 的扩展软件,它利用 定制资源 管理应用及其组件. Operator 遵循 Kubernetes 的理念,特别是在控制器 方面[1] ...

  3. java struts2框架漏洞合集

    目录 struts2 s2-016 payload 数据包 返回结果 struts2 s2-016 参考:https://github.com/vulhub/vulhub/blob/master/st ...

  4. Prometheus监控操作

    一.架构说明 ➢ Prometheus Server:Prometheus 生态最重要的组件,主要用于抓取和存储时间序列数据, 同时提供数据的查询和告警策略的配置管理: ➢  Alertmanager ...

  5. Android studio学习笔记3

    Android studio学习笔记3 RelativeLayout常见属性 相对于父元素给控件布局 android:layout_centerHrizontal 若为ture水平居中 android ...

  6. Installing Superset最新版本安装(笔记)

    官方文档:https://superset.apache.org/docs/installation/installing-superset-from-scratch 由于在centos上安装有各种问 ...

  7. SVN 之切换账号

    简单来说两步就搞定了 第一步删除已缓存的数据 第二步输入要切换账号密码 具体步骤图解如下: 第一步: 点击TortoiseSVN 找到设置  点击已保存数据 点击清除全部 再点击确定 第二步: 点击s ...

  8. Java通过注解获取方法反射运行

    //上下文 @Resource private ApplicationContext applicationContext; @Bean public void test(){ //扫描Control ...

  9. 解决linux conda 命令行环境提示消失的方法

    之前不知道这么搞的,一不小心改了conda的默认设置,后面再登录的时候发现环境名字看不见了,用着很难受,为了解决这个问题,后面发现,应该是我改了changeps1这个设置,他默认是开着的,可以用下面的 ...

  10. 实现两个APP之间的跳转传值

    应用A 跳转到 应用B 1.在B中设置URL Schemes     加入一项item 并赋值,比如kiloMeter 并在B中实现 - (BOOL)application:(UIApplicatio ...