2

私はこのようなことについてはかなり新しいです-私は過去数ヶ月間最初に設定されたプロのgithub会社のアカウントを持っています。最近、私はいくつかのRailsチュートリアルに取り組んでいます。チュートリアルリポジトリを1つ作成し、問題なく個人アカウントにプッシュしました。

ただし、何らかの理由で、作業しようとしている2番目のプロジェクトの手順を実行した後、次のエラーメッセージが表示されます。

ERROR: Permission to <username>/<projectname>.git denied to <businessaccount>.
fatal: The remote end hung up unexpectedly

このリポジトリに私のビジネスアカウントを使用しようとしているのはなぜですか?代わりに、個人のアカウント情報を取得するにはどうすればよいですか?

ありがとう!

4

1 に答える 1

2

gitがリモートサーバーで認証するために使用しているアカウント情報は、リモートのURLの一部として言及できます。

<USERNAME>@<REMOTE_HOSTNAME>:<REMOTE_REPO_URL>

ユーザー名を指定しない場合、gitは現在ログインしているユーザーのユーザー名を自動的に使用し始めます。

残念ながら、Githubでは複数のアカウントに同じSSHキーのセットを使用することはできません。そのため、個人のgithubアカウント用に別のSSHキーのセット(つまり、キーペア)を生成する必要があります。

  1. 個人アカウント用の新しいsshキーペアを生成します

    ssh-keygen -t rsa -f ~/.ssh/id_rsa.personal -C "Keypair for Personal Github account"
    
  2. 次の行を~/.ssh/configファイルに追加して、SSHがホストを参照するたびに新しいキーペアを使用するようにしpersonal.github.comます。

    Host personal.github.com
    User git
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa.personal
    
  3. 個人のgithubアカウントを使用して、使用する予定のすべてのリポジトリpersonal.github.comで、URLの代わりにホスト名を使用してgithub.comください。さらに、git@ユーザー名の部分は省略できます。これは、ですでに説明したため~/.ssh/configです。したがって、これらのいずれかが機能するはずです。

    git clone personal.github.com:keecham/blacktie.git
    git clone git@personal.github.com:keecham/blacktie.git
    
  4. 仕事用のgithubアカウントとキーはこの方法で変更されないままであり、影響を受けることはありません。

于 2013-03-25T20:52:42.797 に答える