我希望使用一个简单的命令行客户端(例如官方 git 客户端)从 github 克隆分支,作为部署工具的一部分。
为了安全起见,我不希望使用基本(用户名/密码)身份验证。由于我已经在我的应用程序中使用了 github 的基于 oauth-token 的 Auth 标头,我想知道是否有一个命令行应用程序可以使用 oauth 令牌对 github 进行身份验证。
谢谢!
我希望使用一个简单的命令行客户端(例如官方 git 客户端)从 github 克隆分支,作为部署工具的一部分。
为了安全起见,我不希望使用基本(用户名/密码)身份验证。由于我已经在我的应用程序中使用了 github 的基于 oauth-token 的 Auth 标头,我想知道是否有一个命令行应用程序可以使用 oauth 令牌对 github 进行身份验证。
谢谢!
2012 年 9 月更新
Github 现在接受使用任何 git 客户端使用身份验证令牌。
您可以使用这些说明获取 github 的 oauth 令牌,这是一个使用 Node.js 和 superagent 的实用演示。
var GITHUB_API_ENDPOINT = 'https://api.github.com/'
superagent
.post(GITHUB_API_ENDPOINT+'authorizations')
.auth('username', 'notactuallymypassword')
.send({ scopes: 'repo', note: 'Social Ops Deployer' })
.end(function(res){
if (res.ok) {
console.log('yay got ' + JSON.stringify(res.body));
} else {
console.log('Oh no! error ' + res.text);
}
});
我没听说过。
你可能已经发现了关于这个主题的官方文档,描述了如何开发这样的客户端。
但我认为它可能会产生额外的开发开销并可能引入错误,所以也许值得尝试不同的方法来解决这个问题?例如: