使用oauth令牌进行身份验证的Git / github命令行应用程序?

时间:2012-07-17 13:40:12

标签: git authentication command-line oauth github

我希望使用一个简单的命令行客户端(例如官方git客户端)来克隆来自github的分支,作为部署工具的一部分。

为了安全起见,我不希望使用基本(用户名/密码)身份验证。由于我已经在我的应用程序中使用github的基于oauth-token的Auth标头,我想知道是否有一个命令行应用程序可以使用oauth令牌对github进行身份验证

谢谢!

2 个答案:

答案 0 :(得分:3)

2012年9月更新

Github now accepts the use of auth tokens using any git client

你可以get a oauth token for github using these instructions,这是一个使用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);
    }
  });

答案 1 :(得分:1)

我没有听说过。

你可能已经发现official documentation on this topic描述了如何开发这样的客户端。

但我认为它可能会产生额外的开发开销并可能引入错误,所以也许尝试不同的方法来解决这个问题是值得的?例如:

  • 使用ssh协议从github检索数据;
  • 使用“仅限拉”权限并使用其凭据在团队中引入新用户。