首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当执行'git submodule add...‘时如何获取有关两个项目的签出版本的信息?

执行'git submodule add...'时,可以通过以下步骤获取有关两个项目的签出版本信息:

  1. 首先,使用git submodule add命令将子模块添加到主项目中。该命令的语法如下:
  2. 首先,使用git submodule add命令将子模块添加到主项目中。该命令的语法如下:
  3. 通过运行以下命令,进入子模块目录:
  4. 通过运行以下命令,进入子模块目录:
  5. 在子模块目录中,可以使用git checkout命令来获取所需的签出版本信息。该命令的语法如下:
  6. 在子模块目录中,可以使用git checkout命令来获取所需的签出版本信息。该命令的语法如下:
  7. 其中,<commit_id>是指要签出的特定提交的哈希值。可以在主项目中执行git submodule status命令来查找特定子模块的最新提交哈希值。
  8. 如果你想要获取子模块的最新提交信息,可以在子模块目录中执行git log -n 1命令。这将显示子模块的最新提交信息,包括提交哈希值、作者、提交日期和提交消息。

需要注意的是,这些步骤仅适用于获取子模块的签出版本信息。如果需要获取主项目的签出版本信息,可以在主项目根目录中执行git log -n 1命令。

对于版本控制和项目管理,腾讯云提供了CodeCommit和CodeArtifact服务。CodeCommit是一种高度扩展的托管式 Git 存储库,提供安全、可扩展、可靠的存储和协作。CodeArtifact则是一种安全、可扩展的软件包管理服务,可存储、发布和共享软件包。您可以通过以下链接了解更多关于腾讯云CodeCommit和CodeArtifact的信息:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Git 中文参考(四)

如果您尝试从一个位置(例如您上游)获取并推送到另一个位置(例如您发布存储库),请使用两个单独遥控器。 show 提供有关远程一些信息。...git diff-tree -c显示,它将合并提交与合并结果进行比较(即 file1…fileN 是父)。...git diff-files -c显示,它将两个未解析合并父与工作树文件进行比较(即 file1 是阶段 2 又名“我们版本”,file2 是阶段 3 又名“他们版本”)。...git diff-tree -c显示,它将合并提交与合并结果进行比较(即 file1…fileN 是父)。...git diff-files -c显示,它将两个未解析合并父与工作树文件进行比较(即 file1 是阶段 2 又名“我们版本”,file2 是阶段 3 又名“他们版本”)。

18810
  • 把你 VS Code 打造成 C++ 开发利器

    注意,实际按键只要同时按下 Alt 和 ←(或者 command 和 ←)两个键即可,不需要 + 键。是为了方便大家看到是需要按两个键才中间增加了 + 。...(2) 提交暂存、推送、拉取等功能 提交暂存、推送、拉取等功能 签出到主要是首次使用 git 命令 glone 仓库下,用 VSCode 打开后这里不会展示分支名,而是一个一个 commitid,所以要收到签出到对应分支名...4.4.4 git 相关其他插件 GitLens 它会显示有 git 有关所有代码提交信息,是在 sidebar 上二叉树图标 GitLens Git Branch Warnings Git Branch..." ] branchwarnings.protectedBranches git graph 它会显示有 git 有关所有代码提交信息,可以方便查看本地分支、远程分支、主干 commit、push...clone 可不需要--recursive 选项),通过 VSCode 打开后,Git (Submodule) Assistant 插件会自动识别并下载所有 submodule

    12.8K53

    Git 中文参考(二)

    目录为空才允许克隆到现有目录中。 GIT 网址 通常,URL 包含有关传输协议,远程服务器地址以及存储库路径信息。根据传输协议,可能缺少某些信息。...Porcelain 格式版本 2 版本 2 格式添加了有关工作树状态和更改项目的更多详细信息版本 2 还定义了一组易于解析可扩展可选标头。 标题行以“#”开头,​​并添加以响应特定命令行参数。...--submodule[=] 指定子模块差异如何显示。指定--submodule=short,使用 short 格式。此格式仅显示范围开头和结尾提交名称。...git diff-files -c显示,它将两个未解析合并父与工作树文件进行比较(即 file1 是阶段 2 又名“我们版本”,file2 是阶段 3 又名“他们版本”)。...如果您只想从工作树中删除子模块本地签出而不提交删除,请改用 git-submodule [1] deinit。有关子模块移除详细信息,请参见 gitsubmodules [7] 。

    18310

    Git 中文参考(一)

    获取多个值,将使用来自所有文件所有值。 使用-c选项运行任何 git 命令,可以覆盖单个配置参数。有关详细信息,请参阅 git[1]。...resolveConflict 冲突阻止执行操作,各种命令显示建议。 implicitIdentity 在从系统用户名和域名中猜出您信息如何设置身份配置建议。...有关详细信息,请参阅 gitattributes [5] 中“合并具有不同签入/签出属性分支”部分。...正整数允许最多并行获取子模块数。值为 0 将给出一些合理默认值。如果未设置,则默认为 1。 submodule.alternateLocation 指定在克隆子模块子模块如何获取备用模块。...submodule.alternateErrorStrategy 指定如何使用submodule.alternateLocation计算子模块替代处理错误。

    24220

    Git中文命令大全

    然后将选定区块反向应用于工作树(并且如果指定了,则索引) --ignore-other-worktrees # git checkout被通缉裁判已经被另一个工作树签出拒绝...--show-linear-break[=] # 不使用--graph,所有历史分支都会变平,这使得很难看到两个连续提交不属于线性分支...-f, --force # 默认情况下,add拒绝创建一个新工作树,它 是一个分支名称并且已经被另一个工作树签出并remove拒绝删除不干净工作树...,从浅仓库中获取git fetch拒绝需要更新.git/shallow引用 -f, --force # git fetch...# 按遥控器定义,获取存储库中一组指定遥控器更新 【submodule】 语法: git submodule [--quiet] add [<options

    18600

    公共模块管理之 Git Submodule 使用总结

    2.2 获取 submodule 使用 git submodule add 命令会自动拉取子工程项目代码到指定目录,但其他开发者获取主项目代码,使用 git clone 命令是不会拉取到子项目的代码...值得注意是,此时主项目修改是其依赖子项目的版本,而非完整变更代码,即引用子项目的 commit id。...$ git submodule update 2.3.4 子项目远程更新,主项目未更新 commit id 在多人协作开发,主项目与子项目的开发往往是异步进行,子项目升级后子项目远程仓库更新并告知主项目可以更新对子项目的版本依赖...由于当前主项目记录子项目版本还未变化,因此主项目执行 git submodule update 也不会更新,此时需要从主项目主动进入子项目执行 git pull 主动拉取新版代码,回到前面的 2.3.2...submodule 项目,主项目获取submodule commit id,然后执行 git submodule update 是根据这个 commit id 来拉取代码,所以

    5.5K180

    git submodule 完整用法整理

    使用git status可以看到多了两个需要提交文件,其中.gitmodules指定submodule主要信息,包括子模块路径和地址信息,moduleA指定了子模块commit id,使用git...这里需要指出父项目的git并不会记录submodule文件变动,它是按照commit id指定submodulegit header,所以.gitmodules和moduleA这两是需要提交到父项目的远程仓库...git clone project.git project3 --recursive 2.3修改子模块 修改子模块之后只对子模块版本库产生影响,对父项目的版本库不会产生任何影响,如果父项目需要用到最新子模块代码...,再用git status查看状态就会发现.gitmodules和moduleA这两都已经改变了,至于.git/config,仍会记录submodule信息,但是本地使用也没发现有什么影响,如果重新从服务器克隆则...git submodule update出现此问题,是因为终端用不是windows自带cmd,用自带cmd打开执行此命令即可

    4.6K20

    Git Submodules 介绍(通俗易懂,总结了工作完全够用 submodule 命令)

    我使用方案中,Git Submodules 承担着非常重要角色。今天先给大家介绍下 Git Submodules,以后我会给大家更详细介绍如何管理不同项目的公共依赖。为什么你值得读这篇文章?...(意思是,当你打开某个被当作 submodule Git 仓库首页,或者拉下这个仓库,没有任何痕迹表明它是个submodule。因为父子信息不存在这里,只存在爸爸那里。)...submodule 父子关系信息怎么存.gitmodules 文件父子关系信息保存在主项目的 .gitmodules 文件,如果不是新加 submodule,这个文件通常不必改变了,因为信息比较固定...方法二,主项目执行git submodule update --remote [submodule文件夹相对路径]这个方法会自动拉取submodule主分支(通常叫master或main)最新版本。...执行git submodule update。只要不写submodule,那么就一次性检查该主项目的所有submodule,都拉下来。

    23.7K146

    理解Git Submodules

    submodule npm package npm package优势在于成熟管理依赖机制,规范且易用,缺点是主项目只能通过package版本获取独立模块更新,在主项目需要与子模块联调场景就会非常麻烦...hash相当于npm packagedependencies版本号 控制依赖版本 想要更新主repo所依赖子模块版本的话,提交这个commit hash变更: $ git add src/packages....关于submodules更多用法,见7.11 Git Tools – Submodules 四.常见问题 子模块分支处于detached状态 每次执行git submodule update --remote...origin master 本地子模块缓存 子模块repo发生迁移时,进行git submodule add可能会遇到本地缓存问题: $ git submodule add ssh://XXX.XXX.XXX.XXX...需要先删掉原配置(第2第3步),再本地缓存子模块信息(第1第4步): # 1.删掉git缓存及物理文件 $ git rm --cached path_to_submodule $ rm -rf path_to_submodule

    2.6K71

    gitsubmodule使用总结

    老高最近项目用到了gitsubmodule,期间遇到了很多坑,比如: 如何更新submodule 如何修改并提交submodule 如何submodule变更在父项目中提交 在弄明白这些问题之前...我们在子模块如何改动父项目是不需要关心,只需要把改动版本号告诉给父项目就行。.../phpgao/CdnHelper usr/plugins/CdnHelper 这个时候如果你留意一下.gitmodules和.git/config这两个文件,应该会发现相关信息已被记录下来!...如何更新submodule clone项目时有子模块存在,第一次是不会顺便clone出子模块,需要执行一些命令: git clone xxx.git # 初始化子模块 git submodule...大家第一间一定想到是remove,但是git貌似没有提供类似 git submodule remove 那么easy方法,所以我们要借助deinit。

    1.1K50

    Gitlab CICD 实践六:统一管理 protocol buffer,API 大仓设计与实现

    调用方如何获取生成接口客户端代码? 如何解决 常见几种解决方案,煎鱼大佬已经描述得很详细了(真是头疼,Proto 代码到底放哪里?),这里不再赘述。...经过查阅资料,总结出适用于我们项目的几种方案。 方案一:api大仓+git submodule(b站) Proto文件只有一份,没有拷贝。...个人项目、单一目可采用这种方案,企业级就得写复杂脚本了。 方案二:api大仓+git submodule + 每个项目生成代码专有仓库 生成代码交给ci。...其他项目如何通过git submodule方式引入 API 大仓?...API大仓体积很小,一个项目的接口定义就几个文本文件。 2. 如何下载git submodule代码? 3. 如何更新、提交git submodule代码?

    1.4K10

    Git Submodule项目子模块管理

    使用命令git status可以看到多了两个需要提交文件,其中.gitmodules指定submodule主要信息,包括子模块路径和地址信息,moduleA指定了子模块commit id,使用git...diff可以看到这两内容。...需要注意是,父项目的git并不会记录submodule文件变动,它是按照commit id指定submodulegit header,所以.gitmodules和moduleA这两是需要提交到父项目的远程仓库...例如: git clone project.git project3 --recursive 修改子模块 修改子模块之后只对子模块版本库产生影响,对父项目的版本库不会产生任何影响,如果父项目需要用到最新子模块代码...更新子模块 更新子模块时候要注意子模块分支默认是不是master分支。 方法一 先pull父项目,然后执行git submodule update,注意moduleA分支始终不是master。

    83120

    Git 工具 - 子模块: submodule与subtree使用

    个人推荐选用Git子模块方式进行开发,父级仓库依赖两个公共子模块,子模块本身和父级仓库一同进行开发,可避免了版本问题和重复开发问题。...而父项目以Submodule形式包含子项目,父项目可以指定子项目header,父项目中会提交信息包含Submodule信息,再clone父项目的时候可以把Submodule初始化。...git submodule常用命令 查看子模块:git submodule 更新子模块: 更新项目内子模块到最新版本git submodule update 更新子模块为远程项目的最新版本git submodule...,Git获取到子模块commit值发生变化,从而记录了这个Git指针变化。...git submodule注意点 虽然使用git submodule为我们开发带来了很多便利,但是随之而来也会导致一些比较容易犯错误,整理出来,防止大家采坑: 子模块有提交时候,没有push到远程仓库

    2.4K10

    Git 子模块应用简介

    直接添加子模块 #切换到本地项目里想添加submodule目录下, 执行 git submodule add 命令执行完成,会在当前工程根路径下生成一个名为".gitmodules..."文件,其中记录了子模块信息。...克隆一个包含子模块项目: #直接clone一个包含有submodule项目 #递归方式克隆整个项目 git clone --recursive clone项目时有子模块存在...,第一次是不会顺便clone出子模块,需要执行如下命令才能发现子模块被checkout出来了: #初始化本地配置文件: git submodule init #checkout出子模块文件 git....git文件中子模块相关条目,需要手工删除 cd .git vim config (删除submodule信息) cd modules rm -rf * (要看清楚,只删除跟submodule有关

    70520

    Visual Studio 2022 17.1 正式发布 生产力大增强

    前言 Visual Studio 2022 17.1 版本已正式发布,该版本包含大量增强生产力更新,摘取一些较为重要更新介绍一下。...然后,索引器将遍历文件并构建一个索引,执行查找操作,该索引又用于加速搜索结果。...增强 Git 相关功能 分支比较功能,可以将当前分支与存储库中其他分支进行比较,更轻松地处理拉取请求(PR)或删除分支。...因此,如果要保留你签出提交后更改,请在退出分离 HEAD 状态之前,创建一个新分支来保存你更改内容。 有关签出提交”功能和更多 Git 增强功能,可在 Taysser 博客中细阅。...问题是添加新项目或依赖发生变化时,依赖关系图和方案过滤器就会过时,因此 Visual Studio 2022 17.1 引进了 “更新项目依赖” 功能,该功能可以随时检查新依赖,把项目的依赖关系更新到最新状态

    2.9K20

    git 系列 — git submodule 命令及其用法

    假如当前存在两个项目:git-main-project(主项目)、git-submodule-project(子模块)。...添加子模块 在主项目的根目录执行git submodule add {http/ssh} 之后会在主项目的根目录生成 .gitmodules 文件,用于记录子模块在信息和子模块同名文件夹,用于存放子模块...例如,在 git-main-project 根目录下执行git submodule add git@github.com:ZhangDaZongWei/git-submodule-project.git...更新主项目 更新主项目,也要兼顾到子模块更新: # 更新主项目,例如 git pull 但是这样只会拉取到子模块 commit 变更记录,并不会主动更新子模块,还需要执行: # 参数 --init...确保 push 子模块 有时更改完子模块后,忘记了 push,但是在主项目更改后却 push 了,所以远程仓库子模块未更新,导致其他人不会获取子模块更新,可以使用以下命令防止这种情况: # 在主模块

    3.1K20

    使用Jenkins + git submodule 实现自动化编译,解决代码安全性问题

    例如提交给版本控制系统被触发,通过类似Cron机制调度,在其他构建已经完成,还可以通过一个特定URL进行请求; Jenkins强大插件式,使得Jenkins可以集成很多软件,可能帮助我们持续集成我们工程项目...Jenkins 首先通过 git 工具获取远程仓库中代码,然后执行用户指定编译指令。...(5) Source Code Management 源码管理 Jenkins 在构建(编译)过程中,需要获取到源代码,因此需要配置 git 仓库地址和账号信息(用户名和密码)。...父项目和子项目的提交是分开,也就是说父项目提交信息只包含子项目的信息,而不会包含子项目的代码;子项目有自己独立 commit,push,pull操作。...需要手动获取所有的子模块,执行指令: git submodule update --init --recursive 此时,再使用 tree 命令看一下文件变化,可以看到 test1 和 test2

    2.2K20

    8. git-submodule 子模块

    执行成功后,git status 会看到项目中修改了.gitmodules,并增加了一个新文件夹(为刚刚添加路径) 使用命令 git status 可以看到多了两个需要提交文件,其中 .gitmodules...指定submodule 主要信息,包括子模块路径和地址信息,moduleA 指定了子模块commit id,使用 git diff 可以看到这两内容。...需要注意是,父项目的 git 并不会记录 submodule 文件变动,它是按照 commit id 指定 submodule git header,所以 .gitmodules 和 moduleA...这两是需要提交到父项目的远程仓库。...克隆带子模块版本库 方法一:先 clone 父项目,再初始化 submodule,最后更新 submodule,初始化只需要做一次,之后每次只需要直接 update 就可以了,需要注意 submodule

    64420

    git submodule来管理独立git子目录

    在软件开发过程中,通常我们会遇到有一些通用部分希望抽取出来做成一个公共库情况,比如安卓和IOS都通用H5页面。而公共代码库版本管理是个麻烦事情。...注意:路径不能以 / 结尾(会造成修改不生效)、不能是现有工程已有的目录(不能順利 Clone) 命令执行完成,会在当前工程根路径下生成一个名为“.gitmodules”文件,其中记录了子模块信息。...下载工程带有submodule 使用git clone下来工程中带有submodule,初始时候,submodule内容并不会自动下载下来,此时,只需执行如下命令: git submodule...init git submodule update 或者是执行以下命令(该命令效果等同于上面两个命令): git submodule update --init --recursive 即可将子模块内容下载下来后工程才不会缺少相应文件...更新submoduleURL 1.更新.gitsubmodule中对应submodule条目URL 2.更新 .git/config 中对应submodule目的URL 3.执行 git submodule

    2K20
    领券