获取在 git 存储库中已修改的项目
Get the project which has been modified in a git repository
所以我正在尝试在 Jenkins 中创建持续交付管道。我的第一步是将 git 存储库导入我的 Jenkins 服务器。举个例子,我的 git 存储库托管在 bitbucket 服务器上(例如 testrepository.git)。现在在这个存储库中,结构如下
Testrepository.git
- 项目 1
- 项目 2
- 项目 3
我的目标是获取已修改的项目列表,并仅构建我的管道中的项目。有没有办法做到这一点?所有项目都是 java 个具有 gradle 个构建文件
的项目
git log --name-only
将显示每次提交中修改的文件名列表。可以通过分析文件名列表来判断哪个项目被修改了。
如果你做持续交付,你可以从上次交付中获取修改后的文件列表
通过以下命令,假设“2016-11-10 16:00”是您的最后一次交付时间戳。
git diff $(git rev-list -n 1 --before="2016-11-10 16:00" HEAD) --name-only
所以我正在尝试在 Jenkins 中创建持续交付管道。我的第一步是将 git 存储库导入我的 Jenkins 服务器。举个例子,我的 git 存储库托管在 bitbucket 服务器上(例如 testrepository.git)。现在在这个存储库中,结构如下
Testrepository.git
- 项目 1
- 项目 2
- 项目 3
我的目标是获取已修改的项目列表,并仅构建我的管道中的项目。有没有办法做到这一点?所有项目都是 java 个具有 gradle 个构建文件
的项目git log --name-only
将显示每次提交中修改的文件名列表。可以通过分析文件名列表来判断哪个项目被修改了。
如果你做持续交付,你可以从上次交付中获取修改后的文件列表 通过以下命令,假设“2016-11-10 16:00”是您的最后一次交付时间戳。
git diff $(git rev-list -n 1 --before="2016-11-10 16:00" HEAD) --name-only