当前位置: 首页 > news >正文

GIT中对子仓库的使用方法介绍

git 子仓库
主仓库中添加子仓库
git submodule add <url> <path>
更新子代码代码
git submodule update --init
克隆含有子仓库的仓库
git clone --recurse-submodules <url>

主仓库中删除子仓库

1、进入包含子仓库的父仓库的根目录
2、使用以下命令将子仓库从父仓库中移除(解除关联)
git submodule deinit <submodule_path>、
3、使用以下命令从 Git 仓库中删除子仓库的记录
git rm <submodule_path>
4、执行 git commit 来提交父仓库的修改
git commit -m "Remove submodule <submodule_path>"
5、最后,删除实际的子仓库文件。你可以手动删除相关的子目录,或者使用以下命令删除子仓库目录:
rm -rf <submodule_path>
子仓库 push 提交到 gerrit 出现没有 change-id ?

由于子仓库在 clone 后,仓库的 .git 目录中,没有 hook/commit-msg 工具
所以在生成的 commit message 中,不会自动增加change-id
这会导致 commit 无法 pushgerrit上走 review 的流程

请使用以下方法增加 commit-msg tool 到子仓库的 .git 目录中:

cd `awk '{printf $2}' .git`/hooks
wget http://192.168.0.202:8002/tools/hooks/commit-msg
chmod +x commit-msg
cd -

对于没有 change-idcommit 可以使用 git commit --amend 或者 git rebase -i 重新增加 change-id
有了 change-id 后即可以顺利 push

拉取子仓库时,避免重复输入用户名和密码
git config --global http.postBuffer 524288000

在父仓库根目录中执行

git submodule update --remote

该命令会根据 .gitmodules 中每个子仓库的分支,同步至远程仓库对应分支的最新节点。
(所以请确保 .gitmodules 每个子仓库的分支名是正确的)

相关文章:

  • 软件测试入门(全面认识软件测试)
  • LeetCode24.两两交换链表中的节点
  • 【LNMP】云导航项目部署及环境搭建(复杂)
  • [HTML]Web前端开发技术30(HTML5、CSS3、JavaScript )JavaScript基础——喵喵画网页
  • 【Django开发】0到1开发美多shop项目:用户登录模块开发。全md文档笔记(附代码 文档)
  • Python 高级语法:一切皆对象
  • 【Flink精讲】Flink任务调度机制
  • ElasticSearch语法
  • 【计算机网络】深度学习使用应用层的HTTP协议
  • 设计模式: 策略模式
  • 猫毛过敏却想养猫时?如何缓解猫毛过敏?宠物空气净化器推荐
  • Linux——缓冲区封装系统文件操作
  • 3.WEB渗透测试-前置基础知识-快速搭建渗透环境(上)
  • 手写commonJS里面的require函数
  • 基于相位的运动放大:如何检测和放大难以察觉的运动(01/2)
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • create-react-app项目添加less配置
  • Go 语言编译器的 //go: 详解
  • JAVA SE 6 GC调优笔记
  • Java 内存分配及垃圾回收机制初探
  • php中curl和soap方式请求服务超时问题
  • Ruby 2.x 源代码分析:扩展 概述
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 从tcpdump抓包看TCP/IP协议
  • 代理模式
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 解决iview多表头动态更改列元素发生的错误
  • 前言-如何学习区块链
  • 算法-图和图算法
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 一个SAP顾问在美国的这些年
  • 栈实现走出迷宫(C++)
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • Java数据解析之JSON
  • 从如何停掉 Promise 链说起
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • # Panda3d 碰撞检测系统介绍
  • #前后端分离# 头条发布系统
  • (2)nginx 安装、启停
  • (aiohttp-asyncio-FFmpeg-Docker-SRS)实现异步摄像头转码服务器
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (十)T检验-第一部分
  • (十一)手动添加用户和文件的特殊权限
  • .chm格式文件如何阅读
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .net core开源商城系统源码,支持可视化布局小程序