2013-02-23 10 views
20

コマンドラインからGitHub APIにアクセスする際に、sshベースの認証を使用する方法はありますか?(例:curlなど?)github APIでssh認証を使用するには?

FWIW、私は(私は私のSSH公開鍵ファイルを指定された方法を変える)以下の多くのバリエーションを試みたが、すべての場合には、私はまだ私のパスワードの入力を求められた。

% curl --pubkey ~/.ssh/id_rsa.pub --user yrstruly https://api.github.com/user/repos 

答えて

7

sshを使用している場合は、決して 'yrstruly'とログオンしないでください。あなたはいつも 'git'として接続します。
GitHubがあなたを 'yrstruly'と認識するのに公開鍵で十分でしょう。
httpsアドレスを使用していて、sshアドレスではないので、その--pubkeyオプションは無視される可能性があります。

有効なsshアドレスはssh://[email protected]で、GithubがそのAPIのアクセスを提案しているとは思いません。

curl --user option httpsのために必要であろうが、「Having trouble downloading Git archive tarballs from Private Repo」のように、唯一の対処:

curl -sL --user "${username}:${password}" https://github.com... 
+0

あなたの最後の点に関しては、そこにレポを変更するのGitHub APIのコマンドのトンだ、とどの認証希望のために明らかに必要である。さらに、認証はさておき、これらのコマンド*の少なくともいくつかは、 '-u'パラメータなしではうまく動作しない可能性があります。なぜならそれらはあいまいであるからです。例えば。 '-u'パラメータがなかった場合、' curl -u yrstruly -d '{"name": "newrepo"}' https:// api.github.com/user/repos'が新しいリポジトリ "newrepo"を作成します指定された? – kjo

+0

@kjo私は同意する、-uが必要であり、それは私が(ユーザー名とパスワードを使って)私の答えで使用するものである。しかし、ここではsshが関与していないので、私はpubkeyを使用しません。 – VonC

関連する問題