还不会 Git 子模块操作?一文教你学会 git submodule 的增、删、改、查!

添加子模块

  • 添加子模块命令如下所示:
$ git submodule add <url> <path>
  • url 为想要添加的子模块路径

  • path 为子模块存放的本地路径

  • 以 GitHub 仓库 r-tinymaix https://github.com/RiceChen0/r-tinymaix 为例,将其做为子模块添加到本地仓库 ./sdk/packages/online-packages/r-tinymaix 路径下,完整命令如下:

$ git submodule add https://github.com/RiceChen0/r-tinymaix.git ./sdk/packages/online-packages/r-tinymaix
  • 命令执行中下载该子模块:

在这里插入图片描述

  • 下载完成后在本地路径就可以看到子模块内容:

在这里插入图片描述

  • 这里报了一个警告:
warning: in the working copy of '.gitmodules', LF will be replaced by CRLF the next time Git touches it
  • 这是因为在文本处理中,Windows平台中使用 CR/LF(回车/换行)作为换行符,Linux平台中仅使用 LF(换行)作为换行符,这个问题可以通过以下方式解决:
$ git config --global core.autocrlf true

查看子模块

  • 查看子模块命令:
$ git submodule
  • 可以看到子模块信息:
c5029b773b0511d32cca78275b7c8f1fb5eb34a8 sdk/packages/online-packages/r-tinymaix (heads/main)
  • 指令执行效果:

在这里插入图片描述

修改子模块

  • 子模块独立于主仓库,当子模块需要修改时,需要进入子模块文件夹,按照子模块版本控制体系修改提交代码。

更新子模块

  • 更新子模块命令:
$ git submodule update

提交子模块

  • 首先查看仓库状态:
$ git status
  • 可以看到有新文件添加进来:

在这里插入图片描述

  • 这里我自己添加了一个 Sconscript 文件,将它也添加进来,执行命令:
$ git add .
  • 再次查看仓库状态,新文件已经添加进来了:

在这里插入图片描述

  • 提交到仓库、推送到远端:
$ git commit -m "add r-tinymaix" 
$ git push origin HEAD:master
  • 博主仓库没有远端,就不 push 了~

在这里插入图片描述

删除子模块

简单粗暴式
  • 删除 .gitmodules 文件中子模块相关条目:

在这里插入图片描述

  • 删除 .git/config 配置项中子模块相关条目:

在这里插入图片描述

  • 删除 .git/module/ 目录下子模块相关内容:

在这里插入图片描述

  • 删除子模块目录及源码:

在这里插入图片描述

官方优雅式
  • 根据官方文档,使用卸载子模块命令:
$ git submodule deinit sdk/packages/online-packages/r-tinymaix
  • 如果添加上参数 -f,则子模块工作区内即使有本地的修改,也会被移除:

在这里插入图片描述

  • 此操作是在 .git/config 配置项中删除了子模块相关条目:

在这里插入图片描述

  • 执行 rm 命令:
git rm  sdk/packages/online-packages/r-tinymaix
  • 此操作为移除 sdk/packages/online-packages/r-tinymaix 文件夹,并自动在 .gitmodules 中删除了 r-tinymaix 子模块相关内容:

在这里插入图片描述

  • 但是此时 .git/module/ 目录下子模块相关内容还有残余,可自行删除:

在这里插入图片描述

更多内容

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ssm是指Spring+SpringMVC+MyBatis的开发框架组合,通过结合这几个框架可以快速开发Java Web项目。要实现登录、功能的demo下载,我们需要按照以下步骤进行: 1. 首先,我们需要建立一个基本的SSM项目。可以通过Spring官网下载Spring源码,并且在Maven项目中引入对应的依赖。 2. 在SpringMVC配置文件中配置登录页面和处理登录请求的Controller。我们可以定义一个LoginController类,其中包括一个登录页面和处理用户登录的方法。 3. 在MyBatis配置文件中配置数据库连接和相关的数据库操作。我们可以通过连接数据库,创建一个用户表,执行操作。 4. 编写相应的Mapper接口和Mapper映射文件,用于实现与数据库的交互。例如,我们可以定义一个UserMapper接口,其中包括登录、等方法。 5. 在Spring配置文件中配置相关的Bean,用于连接数据库和处理业务逻辑。这些Bean包括数据源配置、事务管理器、Mapper扫描和连接池等。 6. 在web.xml文件中配置DispatcherServlet和相关的SpringMVC配置。这样,我们的web应用程序就可以通过访问指定的URL来实现登录功能。 7. 编写前端页面,实现用户登录界面。我们可以使用HTML、CSS和JavaScript等技术来设计页面。 8. 最后,我们可以通过源码管理工具(Git或SVN)将项目上传到代码托管平台,然后进行下载。 总结一下,要实现SSM登录、功能的demo下载,我们需要建立基本的SSM项目,包括配置登录页面和处理登录请求的Controller、配置数据库连接和操作的Mapper接口、配置相关的Bean和配置SpringMVC。最后,编写前端页面和上传代码到代码托管平台,以供下载使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hello阿尔法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值