在Github操作中获取提交SHA [英] Get commit SHA in Github actions

查看:14
本文介绍了在Github操作中获取提交SHA的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Github操作中,您可以使用${GITHUB_SHA}获取提交SHA,它是a default env variable.。然而,此提交SHA似乎是合并提交!?这不等于PR的Github用户界面上显示的提交SHA。关于如何获得在PR中显示的SHA(在Github UI上),您有什么想法吗?

推荐答案

了解发生的情况

参考:Github community post带有维德周(Github合伙人)答案。

当您可以创建拉式请求时,GitHub将执行基于 在伪合并分支refs/pull/:prNumber/merge上, merge_commit_sha不存在于基分支或头分支上,但指向 该代理项合并提交,并且有一个可合并的键来显示 测试提交的状态。

因此,在这里,github.sha代表实际的合并提交。

Github变量

提示:您可以使用以下步骤打印GitHub variables

- name: Show GitHub context
  env:
    GITHUB_CONTEXT: ${{ toJson(github) }}
  run: echo "$GITHUB_CONTEXT"

您似乎需要的是${{ github.event.pull_request.head.sha }}值。

pull_request的情况下,可以在${{ github.event.pull_request.head.sha }}变量中找到最新提交的哈希,而${{ github.sha }}是指PR合并提交。

请注意,如果已为派生回购打开了Pull_Request,则github.event.pull_request变量将为空(不知道是错误还是他们正在进行的工作)。

这篇关于在Github操作中获取提交SHA的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆