我正在使用 gocd 持续交付工具 + git。我的项目由许多子项目组成。我不想在每次提交时重建所有子项目,因此为每个子项目创建了一个管道。我知道,对于每个管道,比如 project1,我必须选择适当的工作目录并像这样运行:
- 获取触发 gocd 构建的 git commit。
- 检测该提交中的更改是否包含 project1 文件夹
- 如果整个项目的更改也影响了 project1 文件夹,则为 project1 运行自定义构建命令。
我如何从触发当前构建的 gocd 获得提交?是否只是 git 的最新提交?我认为最新提交在许多并发提交的情况下不是安全的选择,这就是为什么我想直接从 gocd 获取它 - 我希望它为每个构建触发事件存储它。如何检测提交对 bash 中的文件夹的影响?