2013-03-25 45 views
2

我對這個東西相當新 - 我有一個專業的github公司帳戶,最初幾個月是第一個設立的。最近,我一直在研究一些rails教程。我創建了一個教程庫,並在沒有任何問題的情況下推入我的個人帳戶。第二個帳戶/回購推送問題

然而,以下的步驟進行第二個項目,我努力工作,後由於某種原因,我得到這個錯誤信息:

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

爲什麼要使用我的業務佔該回購?我該如何讓我的個人賬戶信息取而代之呢?

謝謝!

回答

2

git用來驗證遠程服務器的帳戶信息可以作爲遠程URL的一部分提及。

<USERNAME>@<REMOTE_HOSTNAME>:<REMOTE_REPO_URL> 

如果你不給任何用戶名,混帳開始使用你的當前自動登錄用戶的用戶名。

不幸的是,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而不是github.com。另外[email protected]用戶名部分可以省略,因爲我們已經在~/.ssh/config中提到過了。所以這些應該現在工作。

    git clone personal.github.com:keecham/blacktie.git 
    git clone [email protected]:keecham/blacktie.git 
    
  4. 你工作的github帳戶和密鑰保持不變這種方式,不應該受到影響。

+0

感謝您的回覆。這是我今天在GitHub上創建的一個公共回購協議。 https://github.com/keecham/blacktie 我曾嘗試爲我的個人電子郵件生成一個SSH密鑰,但它說我已經有一個。當我將SSH密鑰複製並粘貼到我的個人github帳戶時,它表示它已在某處使用。不知道發生了什麼事。 – 2013-03-25 23:07:53

+0

@KishoreEechambadi - 我已經更新了我的回答,並提供了有關如何爲每個github帳戶使用不同的SSH密鑰對的說明。 – Tuxdude 2013-03-26 02:08:15

+0

謝謝!所有步驟都奏效 - 我創建了一對新的ssh密鑰,(創建並)將這些行添加到配置文件中,並能夠克隆回購(儘管目前爲空)。但是,當我嘗試git推它仍然說的權限被拒絕。我如何推動個人用戶?如何在兩者之間切換? – 2013-03-27 06:07:06