我正在计划我们团队的新部署流程。
对于每个构建X,我们有上一个构建X-1的$last_commit_from_last_build和现有构建X的$last_commit。
我们不并行运行构建,这意味着在构建X中可能会有多个提交,因此我们需要列出这些提交,以便我们不会错过它们。例如,以下可能是从最旧到最新的提交顺序:
(last_commit_from_last_build)(Build X-1), (some_commit_1, some_commit_2, last_commit)(Build X)
在构建X中,我们需要构建$last_commit_from_last_build和$last_commit之间的所有提交。 我们只想要$last_commit_from_last_build和$last_commit之间的提交。
因此,我们决定使用:
git log $last_commit_from_last_build...$last_commit
。
问题在于,如果我们在GitHub上有以下历史记录:
当我们运行git log 3ec29f0...573e22e
时,我们会收到以下结果:
提交bdd和e57在这些提交之间。
637不在其中!
我们的逻辑可能出了什么问题?有没有更好的方法来获取所请求的列表?这会导致错误的构建,并阻止我们继续进行项目。