2012-04-09 5 views
1

私は次のことを実行したとき、それは成功したようだ:私は私のレポからsudo git pushを行う際プッシュ

$ sudo ssh -T [email protected] 
Hi x! You've successfully authenticated, but GitHub does not provide shell access. 

しかし、それは私が

Permission denied (publickey). 
fatal: The remote end hung up unexpectedly 

を取得する動作しません。誰でもここで助けることができますか?

+0

あなたのキーは特定のレポに対して承認されていますか? –

+0

どうすればこのことを確認できますか?私は自分自身でMacでレポを作成した後、ubuntuのインスタンスにリポジトリをクローンしたということです。今私はubuntuのインスタンスからプッシュしようとしています。 – locoboy

+0

うーん、私はその問題を知っているかもしれないと思う。おそらく私の.git/configと関係がありますか? – locoboy

答えて

0

EC2で実行している事実はまったく重要ではありません。ここでは、sshキーの設定が間違っている、または間違ったユーザーと最初にリポジトリを複製するという問題に直面しています。

何をしても、絶対にsudoを使う必要はありません。通常のユーザーを使用してレポをクローンできるはずです。それでも問題が解決しない場合は、このユーザー用に新しいsshキーを生成して、それをrepoに追加してください。

ssh -T [email protected] 

がこのユーザーに対してもう一度動作している場合は、再度レポを複製してみてください。それがうまくいくなら、それを押すことができるかどうかを確認してください。

まだ問題が発生している場合は、install guide for Linux provided by GitHubに必ず従ってください。そこに書かれたすべては、グラフィカルなフロントエンドのないUbuntuのバージョンでも動作します。

0

私はAWS EC2 Ubuntuインスタンスで同じ問題を抱えていましたが、ちょうどこの方向のプッシュで解決しました。blog post

私にとって起こったことは、rootがクローンしていたフォルダにアクセスできることでした。そのための

drwxr-xr-x 2 root root 4096 Apr 25 00:51 sites

私は私のデフォルトのユーザーとして、そのフォルダへの書き込み権限を持っていなかったので、私はsudo git clone ...コマンドをしなければなりませんでした。私が行うために必要なすべては自分自身/サイトへの書き込みアクセス権を与えた

は、私は、ユーザーubuntuとしてのgitコマンドを実行したgit clone...コマンドでsudoを省略することができ

sudo chown -R ubuntu /sites

をフォルダ。

これは私のために修正されました。私は~/.sshフォルダのファイルがubuntuの所有者であったため、そのユーザーがコマンドを実行していなければならないと思います。