【发布时间】:2017-04-21 06:08:11
【问题描述】:
我正在尝试做的是版本检查。我想确保代码保持在最低版本之上。所以我需要一种方法来知道当前分支是否包含指定的提交。
【问题讨论】:
-
查看建议的副本以了解如何查找包含指定提交的 所有 分支。要确定 current 分支是否包含提交 C,请使用“plumbing”命令
git merge-base --is-ancestor。如果 C 是HEAD的祖先,则当前分支包含 C,因此:if git merge-base --is-ancestor $hash HEAD; then echo I contain commit $hash; else echo I do not contain commit $hash; fi -
您好,请将此作为答案提交,以便选择正确答案=)
-
@Ben - 我将其添加为社区 wiki 答案。
-
@Remover:在 shell 脚本中,零为真,非零为假:与 C 约定相反。
/bin/true最初实现为exit 0,/bin/false实现为exit 1。 (现代的 shell 已经内置了。)
标签: git