gpt4 book ai didi

git - 是否发生了从特定分支到 master 的 merge ?

转载 作者:太空狗 更新时间:2023-10-29 14:19:22 25 4
gpt4 key购买 nike

我在 Git 存储库中有两个主要分支 - develop 和 master。新功能开发发生在 develop 的分支中,然后 merge 到 master 中进行部署。

我想确定自某个时间以来是否发生了从 develop 到 master 的 merge 。我什至对实际提交本身并不真正感兴趣,只是 develop 中的 something 已 merge 到 master 中。

我试过:

git rev-list --merges origin/develop..origin/master --since <date> | wc -l

在我知道有 merge 的一段时间内,但它似乎总是返回零。

更新

此外,我已尝试逐步构建它。开始于:

git rev-list --merges origin/master --since <date>

我将所有 merge 到 master 中,包括开发分支和任何可能存在的修补程序分支。只有当我添加“起源/开发”约束时,我才会在结果中一无所获。

最佳答案

为了找到上次 merge 分支的时间,我会使用 git merge-base。这显示了两个分支共有的最新提交。

git merge-base origin/develop origin/master

这将在两个分支中提供最新的公共(public) SHA,让您了解它们上次 merge 的时间。您可以将提交 SHA 通过管道传输到 git log 并查看最后一次提交。

git merge-base origin/develop origin/master | xargs git log -1

如果您想查看自此 SHA 以来分支上的所有提交:

git merge-base origin/develop origin/master | xargs -I sha git log sha..origin/develop

有了这个,您将能够看到在 origin/develop 上进行但尚未在 origin/master 上进行的所有提交的列表。

关于git - 是否发生了从特定分支到 master 的 merge ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23343540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com