如何检索 git 中两次提交之间更改的 maven 模块列表

2024-03-09

我有一个带有主模块和多个子模块的 Maven 项目。我想知道是否有一种简单的方法来检索两次提交之间更改的所有模块。


无论如何,在问题提出近三年后:

我基于 git diff 的启发式设计,基于 Maven 工件受惯例支配的事实。

  1. 提取所有文件更改git diff --name-status <commit1> <commit2>
  2. 整理、添加文件、更新文件、删除文件
  3. 从这些信息来看,如果文件看起来像a/b/src/main/... or c/src/测试,根据 Maven 约定,受影响的模块是a/b and c。如果文件看起来像d/e/pom.xml, 简单的!该模块是d/e.

当然,这不能处理诸如a/b/c/README.md。是在 a、a/b 还是 a/b/c 中?

我使用这个启发式列出所有要为 CI 构建重新编译的模块。如果其中一个文件无法通过上述算法进行分类,我就重建整个项目。

Cheers

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检索 git 中两次提交之间更改的 maven 模块列表 的相关文章

  • 如何使用 jenkins shell 创建新的 git 分支

    我想达到以下目标 在某些詹金斯工作中 从 dev branch 创建一个新分支 对新创建的分支 new branch 进行一些更改 将新创建的分支推送到 git repo 我在詹金斯中执行了以下步骤 我已经在 源代码管理 部分配置了我的 g
  • 变基后无法推送到分支

    我们使用 git 并有一个 master 分支和开发人员分支 我需要添加一个新功能 然后将提交重新设置为 master 然后将 master 推送到 CI 服务器 问题是 如果我在变基期间发生冲突 我无法在变基完成后推送到我的远程开发人员分
  • BitBucket+Jenkins:仅在特定分支更改时触发构建

    以下是该问题的据称解决方案 尽管它看起来确实是一种解决方法 而不是最终的解决方案 有没有一种方法 通过作业配置或 bitbucket 挂钩配置 我可以将作业设置为仅在推送到特定分支时运行构建 是否可以仅从一个特定分支触发 Jenkins h
  • Maven无法编译java 1.8

    我正在尝试使用 maven 构建 jar 但我不断收到错误 ERROR Failed to execute goal org apache maven plugins maven compiler plugin 3 1 compile de
  • 如何在android studio中使用maven

    我想用底部栏 https github com roughike BottomBar我的项目中的库 当我添加正确的gradle命令在build gradle文件和sync 我收到此错误 Failed to resolve com rough
  • 使用 'gitbranch' 命令显示当前 git 分支

    我在处理太多分支时遇到问题 需要花费很多时间才能找到我现在正在处理的当前分支 有没有办法在使用时显示的列表顶部列出当前分支git branch命令 如果您只想要签出分支 请使用git branch show current
  • Maven 和 Ant 无法运行 Java - CreateProcess error=206,文件名或扩展名太长

    当maven通过antrun执行这个java代码时 我得到可怕的错误 206 文件名或扩展名太长
  • 从原型创建 Maven 项目时出错:501 HTTPS 必需

    I run mvn archetype generate并得到这个错误 Error reading archetype catalog http repo maven apache org maven2 org apache maven w
  • 更改 git diff 输出前后的行数

    我想增加更改之前和之后显示的行数git diff output 类似于grep A3 B5 根据git diff help git diff支持与标准相同的参数diff命令 w r t 上下文 U
  • git am:补丁格式检测失败

    我以前从未在 Git 中使用过补丁 我需要一些帮助 我正在尝试将补丁应用到 Git 存储库来测试 Wine 补丁 特别是这个补丁在这里 https bugs winehq org attachment cgi id 60752 所以我做了以
  • 使用子模块克隆存储库:覆盖凭据

    我必须automate克隆存储库并获取它的所有子模块 存储库子模块的 url 指定于 gitmodules 如果我要使用默认值 我就会这样做 git clone recursive https username email protecte
  • 通过 SFTP 克隆 Git 存储库

    每次我尝试克隆 Git 存储库时都会遇到致命错误 我运行这个 git clone sftp email protected cdn cgi l email protection git foobar git 我得到这个 fatal Unab
  • 如何在Windows Git shell中运行./script.sh?

    也许这很尴尬 但是当我在 Git shell 中工作时 我无法在 Windows 上运行 sh 文件 也许我必须安装一些东西 但我认为 Git 会支持 bash 命令 我知道 Windows 不使用 sh 文件 我正在执行安装步骤游戏结束
  • 提交 ID 从哪里来?

    我只是对此很好奇 提交 ID 不能是随机的 因为它们需要是唯一的 不过 它们似乎是随机的 这让我想知道 为什么它们不只是连续的数字 我的意思是 它们只需要在存储库中是唯一的 对吧 或者我在这里错了 Thanks Git 提交 ID 是 SH
  • Github README.md 和 readme.md - 如何删除其中一个?

    不知何故 我最终在 github 上有了 README md 和 readme md 现在这两者相互影响 所以我的 GitHub app 完全混乱了 Github网站没有任何文件删除功能 如何删除这些文件之一 只需删除其中一个文件并提交删除
  • Maven 配置文件 - 如何为父级运行插件一次,为模块运行多次?

    我对詹金斯的输出有点困惑 Jenkins 上的工作 底部缩短了 pom xml mvn deploy Pprofile1 我的所有插件都会运行 4 次 父 pom xml 父 module1 pom xml 父 module2 pom xm
  • 如何在保留历史记录的同时将 git 存储库重新设置为父文件夹?

    我有一个 git 仓库 foo bar baz具有大量的提交历史和多个分支 我现在想要 foo qux位于同一个仓库中 foo bar baz 这意味着我需要它们都位于植根于的存储库中 foo 但是 我想保留我所做的更改的历史记录 foo
  • git-daemon 的日志保存在哪里? (Windows 上的 Git 使用 Cygwin)

    我正在将 git daemon 作为 Windows 服务运行 使用创建进程 服务中使用的命令是 git daemon reuseaddr base path data test work export all verbose enable
  • maven 构建 OSGi 的问题(包括依赖项)

    我目前正在从 OSGi iPOJO 和 iPOJO Annotations 开始 并尝试构建一个要在 Felix 中部署的简单组件 不幸的是 我遇到了各种问题 这些问题需要我花几个小时才能解决 或者在浪费时间后我什至无法解决 如下所示 我想
  • git stash 和编辑帅哥

    我完全喜欢git add p and git stash但我偶尔会遇到以下问题 该问题是通过以下命令序列重现的 git add p my file 然后我手动编辑大块 using e 因为 git 建议的分割不适合我 git stash k

随机推荐

  • 使用字符串变量加载图像(需要)不起作用

    需要带有字符串变量的图像不起作用 working var texture require images imag 01 jpg doesn t work path images imag 01 jpg var texture require
  • android post 问题,为什么我收到“没有主机路由”

    有人可以帮助我吗 打电话时HttpResponse response client execute request 它抛出一个IOException 这表明 没有到主机的路由 HttpClient client new DefaultHtt
  • Chrome 扩展:webRequest 重定向到现有选项卡,无需打开新选项卡

    当用户打开某个页面时 我想在打开新选项卡之前在现有选项卡中打开该页面 我尝试过 webRequest chrome webRequest onBeforeRequest addListener function details chrome
  • 如何构建 std::vector 然后对它们进行排序?

    我有一堆字符串需要排序 我认为 std vector 将是最简单的方法 但是 我以前从未使用过向量 因此需要一些帮助 我只需要按字母数字对它们进行排序 没什么特别的 事实上 string compare 函数可以工作 之后 我如何迭代它们以
  • 如何正确设置 Angular2 路由中的应用程序上下文路径?

    我使用 angular cli 创建了一个 Angular 项目 版本 1 0 0 beta 28 3 我使用 npm start 在开发环境中运行应用程序 并且应用程序在 localhost 4200 中运行良好 现在为了复制生产部署 我
  • 可选权限,以便应用程序可以在所有设备上显示并在某些设备上启用可选功能?

    Android 中的许多功能都需要在清单中设置使用权限 然后 这些值决定哪些设备将在市场上看到它们 但是 如果该功能是可选的 如果可以使其在许多设备上运行 但只需要少数设备上的许可 该怎么办 举个例子 假设一个应用程序具有多种功能和大量内容
  • 浏览器特定的前缀,在转换时具有 CSS 过渡

    根据 caniuse com 对于同时支持 CSS 的浏览器transition和CSStransform 组合起来至少有三种不同的类型 那些需要 webkit 两者的前缀transition and transform 例如 Safari
  • 使用反应本机元素更改主题不起作用?

    我一直在使用 React Native 元素 我想为我的应用程序实现黑暗模式 但由于某种原因我无法获取主题道具
  • 如何从命令行更新项目中的单个 nuget 包?

    我正在尝试更新具有多个依赖项的 csproj 中的单个包 也就是说 packages config 文件如下所示
  • 如何更改 SQLite 数据库列中的值?

    我有一个具有以下格式的 SQLite 数据库 TABLE users name text avatar text password text userdir text role numeric 我想更改数量role 我怎样才能改变它 我的意
  • IntelliJ 中的 Intellisense 不再工作

    我目前正在运行 IntelliJ IDEA 13 1 运行 IntelliJ 13 时 智能感知 自动完成停止工作 我尝试升级 但仍然不起作用 我可以使用显式调用代码完成ctrl space 我看了进去设置 gt 编辑器 gt 代码完成看起
  • 测试容器;在 docker 内运行 @Testcontainers 测试 [在 Docker 内运行 Docker]

    如何跑步 Testcontainers基于 docker 容器内的测试用例 我有一个简单的 Spring Boot 应用程序 它具有集成测试 组件级别 可以使用以下命令与容器进行交互Testcontainers 测试用例从外部容器 本地机器
  • 处理按键事件时 NSTextField 泄漏

    我是这个论坛的新手 我已经搜索过 但没有找到这个问题的任何答案 这个问题在本周的大部分时间里一直困扰着我 每次按下按键时 NSTextField 都会导致内存泄漏 我已将这个问题从我的代码中分离出来 并且可以按如下方式重现 创建一个新的 C
  • 如何禁用 UIWebview 水平滚动?

    我尝试通过插入来禁用它 到我的 HTML 字符串中 以及上面的十几个变体 徒劳地希望我只是搞砸了标签语法 但似乎没有什么可以阻止 UIWebView 水平滚动 然而 有些应用程序可以做到这一点 例如 MobileRSS 并且可能由于它们没有
  • iOS上删除大文件文件夹的性能

    假设我的 iOS 应用程序的数据目录中有一个文件夹 其中包含数千个小文件 删除此文件夹 通过 NSFileManager removeItemAtPath 需要相当长的时间 但在 OS X 上 删除具有相同内容的文件夹非常快 它似乎只是从文
  • Java 项目的包结构?

    在 Java Web 应用程序中设置包结构的最佳实践是什么 您将如何设置您的 src 单元测试代码等 你可以关注maven的标准项目布局 http maven apache org guides introduction introduct
  • shell中实时去除回车

    对于上下文 我尝试创建一个 shell 脚本来简化 ffmpeg 的实时控制台输出 仅显示正在编码的当前帧 我的最终目标是在某种进度指示器中使用此信息进行批处理 对于那些不熟悉 ffmpeg 输出的人来说 它将编码的视频信息输出到 stdo
  • pandas 对布尔类型应用过滤器

    这些是我的 DataFrame 的类型 count int64 word object cat1 bool cat2 object cat3 bool dtype object 如何对 cat1 和 cat2 中的布尔值进行过滤 就像是 d
  • 如何在 C# 中使用可选参数?

    Note This question was asked at a time when C did not yet support optional parameters i e before C 4 我们正在构建一个从 C 类以编程方式生
  • 如何检索 git 中两次提交之间更改的 maven 模块列表

    我有一个带有主模块和多个子模块的 Maven 项目 我想知道是否有一种简单的方法来检索两次提交之间更改的所有模块 无论如何 在问题提出近三年后 我基于 git diff 的启发式设计 基于 Maven 工件受惯例支配的事实 提取所有文件更改