1. 什么是github token
GitHub token是访问GitHub API所需的凭证。它允许您以身份验证身份并访问需要身份验证的GitHub API。在GitHub API中,许多功能都需要身份验证,例如创建或删除存储库,打开或关闭问题,创建分支或提交PR等。
2. github token应用场景
2.1 对于数据调用的限制
未经身份验证的用户只能以每小时60个请求的速度访问GitHub API的公共部分。 GitHub OAuth应用程序和GitHub App用户可以实现更高的速率限制。 此外,还可以设置请求头中的“ User-Agent ”,以便GitHub知道您的应用程序将使用API。
对于以身份验证的请求,GitHub提供了以下速率限制:
github.com:每小时5000个请求
API:一小时5000个核心请求和每个用户的额外请求速率限制
2.2 每次运行GitHub Actions时需要的字段key
GitHub Actions提供的密钥环境变量就是其中之一。该密钥用于连接到第三方服务。如果不想在操作开始时手动传递其用于身份验证,并且您正在使用的是受支持的服务,则可以使用密钥而不是将其他凭据链接。定义GitHub Actions Secrets是保存个人密码或身份验证令牌等私密数据的安全方法。
3. 如何查看github token
3.1 前往“Settings”页面进行获取
登录GitHub账户后,在右上角下拉菜单中选取“Settings”,跳转到个人账户设置页面。从左边侧边栏选择“Developer settings”,然后点击“Personal access tokens”。
在此页面上,您可以创建、编辑和删除您的个人访问令牌。从页面上面的“Generate new token”开始创建令牌。
在“Note”字段中,输入您自己的名称,并选择要稍后使用的权限,然后单击“生成令牌”。您将被重定向到一个页面,其中包含您的访问令牌及其详细信息。要复制令牌,请单击页面顶部的“复制令牌”按钮。
3.1 通过CLI获取访问令牌
另一种方法是使用CLI通过请求获取访问令牌。对于脚本化的操作,此方法非常有用。首先,要生成由客户端用于身份验证的GitHub Personal Access Token,请执行以下命令:
curl -u <username> -d '{"scopes":["repo"],"note":"token-xxxxx"}' https://api.github.com/authorizations
然后,您需要将以下行添加到您的CLI环境中:
export GITHUB_TOKEN=your_personal_access_token_here
这使得GitHub CLI在发出API调用时自动提供用于身份验证的令牌。
4. 私密环境变量
GitHub Secrets允许您存储密钥、口令和其他敏感信息,然后在GitHub Actions的工作流程中使用这些信息作为环境变量。
您可以在私有存储库和公共存储库中使用GitHub Secrets。在具有机密数据的工作流程中,私有存储库特别有用,因为这样可以确保不进入公共网络。
要在存储库中设置GitHub Secret,请按照以下过程进行操作。
登录GitHub账户,切换到您的仓库。
选择存储库中的“Settings”。
选择“Secrets”选项卡。
单击“New repository secret”。
输入名称和值,然后单击“Add Secret”。
5. github token的应用
5.1 github actions自动化测试
使用GitHub Actions可以自动运行代码测试,并将测试结果发布到指定的地方。 GitHub Actions为测试工具提供了支持,因此可以使用传统的测试框架,如Jest、Mocha、PHPUnit等。Test-kitchen可以通过提供virtualbox、Google Compute Engine、AWS、Esxi、及VMware Fusion等平台来测试您的代码。
使用GitHub Actions,您可以自动创建构建并将构建部署到指定的地方。我们通常会将构建与部署绑定在一起,以便每次构建测试都会在部署之前进行,以确保该功能没有问题。
5.2 自动更新README文件项目统计信息
一个示例是使用GitHub Actions将生成的一个或多个SVG文件中的GitHub统计信息注入到README文件中。这是有意义的,因为它可以使存储库看起来更活跃,并且通常会吸引更多关注。
GitHub API允许我们访问存储库的数据(例如有关问题、拉取请求以及贡献者的信息)以及有关某个存储库中某个用户活动的数据(例如之前给出的示例中显示的内容)。
6. 总结
在本文中,我们了解了GitHub token的作用和应用,同时也学习了如何在GitHub上创建和访问个人访问令牌,以及如何在工作流程中使用私人GitHub Secrets。GitHub Actions是GitHub提供的一种自动化工具,可以帮助我们更加高效的写代码、合并、测试、部署等等。GitHub Token是许多GitHub API功能所必需的,它允许我们在GitHub中进行许多访问受限资源的操作。