用git bash在monorepo中的ci / cd独立微服务

时间:2016-10-16 07:35:35

标签: git bash continuous-integration microservices monorepo

使用Bash和git,如何获取包含与上次将分支合并到master时不同的文件的目录集合?

更好的是匹配模式的更改集合,例如包含特定文件名,即构建包含package.json的已更改目录集合以及包含requirements.txt的更改集合。< / p>

1 个答案:

答案 0 :(得分:1)

您可以使用git merge-base获取上次合并:

git diff --name-only $(git merge-base --fork-point master myBranch)..myBranch

在叉点部分,请参阅this answer

从那里,您可以通过模式grep过滤掉结果。

正如torek在评论中添加,如果不需要fork-point,并使用 a pathspec

git diff --name-only master...myBranch -- requitements.txt

请参阅“What are the differences between double-dot "..." and triple-dot "..." in Git diff commit ranges?

http://mythic-beasts.com/~mark/git-diff-help.png