2013-04-29 91 views
5

我在Eclipse中使用Egit來使用git並訪問github。一切工作正常,但有一件事,我希望省略鍵入id_rsa密鑰密碼每當我推我的提交給github。如何使eclipse記住ssh密鑰密碼?

每次我重新啓動Eclipse並嘗試推送時,系統都會要求輸入密碼。

Passphrase Request

我怎樣才能使Eclipse記得密碼,這樣我就不必手動輸入?

感謝

+0

如果一切都失敗,您可以生成一個沒有密碼的SSH密鑰! – 2013-04-29 14:32:18

+2

是的,這是一種方式,但它不是一個安全的選擇。是嗎? – TheKojuEffect 2013-04-29 14:59:57

+0

公平地說,如果您擔心安全問題,您應該準備好提供一小部分輸入密碼的步驟。 – 2013-04-30 01:01:01

回答

0

使用SSH代理。

使用ssh-add將代理鑰匙加入代理商。 (這會詢問你的密碼。)

之後代理應該做所有的認證。 (沒有密碼需要了。)

詳情:

  • 嘗試手動訪問你的倉庫:cd $your_repository; git fetch - >它應該問你的密碼
  • 進入ssh-add -l - >它應該輸出「代理沒有身份「。
  • 進入ssh-add - >它應該問你的密碼
  • 進入ssh-add -l - >應列出一個身份(您剛纔添加的鍵)
  • 再次嘗試訪問您的存儲庫:cd $your_repository; git fetch - >它應該現在的工作無需詢問您的密碼
  • 嘗試從eclipse訪問您的存儲庫。 - >再次,不需要密碼。
+0

謝謝,但我仍然無法弄清楚如何做到這一點。你能詳細解釋一下嗎? – TheKojuEffect 2013-04-29 15:33:09

+1

'git fetch'沒有要求我的密碼可能是因爲我已經設置記住密碼,當我登錄到我的Ubuntu系統。 'ssh-add -l'顯示添加的密鑰。這個問題只有在從'Eclipse'推送時纔會出現。 – TheKojuEffect 2013-04-30 02:06:31

+0

在這種情況下,你應該提出一個針對egit的bug。 (但首先檢查日食中可能的egit選項。) – michas 2013-04-30 07:43:55

5

即使ssh-add -l列出了您的密碼保護密鑰,EGit可能不會授予它並仍然要求密碼。

要在Ubuntu或Mac OS X操作系統的鑰匙圈整合把

export GIT_SSH=/usr/bin/ssh 

~/.bash_aliases或當適用於您的操作系統。