讓我開始說明明顯的......我對git的信心仍然在一個黑暗的角落裏徘徊:)
我們一直在使用它這裏的內部最近,我開始得到了它的竅門,但我有幾個小時就擺在面前我拿到駕照;)MsysGit git-cmd.bat命令行界面:我如何指定我的公鑰
我們有內部的資源庫我們的內部網,當使用git-cmd cli時,git在嘗試進行身份驗證時會在默認位置查找默認密鑰。
我們的存儲庫正在使用不同的密鑰。
是否有一個git配置文件或我可以編輯的東西放在適當的鍵的路徑?
如何設置憑據?
讓我開始說明明顯的......我對git的信心仍然在一個黑暗的角落裏徘徊:)
我們一直在使用它這裏的內部最近,我開始得到了它的竅門,但我有幾個小時就擺在面前我拿到駕照;)MsysGit git-cmd.bat命令行界面:我如何指定我的公鑰
我們有內部的資源庫我們的內部網,當使用git-cmd cli時,git在嘗試進行身份驗證時會在默認位置查找默認密鑰。
我們的存儲庫正在使用不同的密鑰。
是否有一個git配置文件或我可以編輯的東西放在適當的鍵的路徑?
如何設置憑據?
簡短的回答
如果通過HTTPS訪問該存儲庫,那麼你可以使用http.sslKey
配置或GIT_SSL_KEY
環境變量中指定其位置(see the git config docs)。
龍答案
通常它不要緊,你的私人密鑰,因爲理想它們存儲在一個關鍵的代理人,你需要弄清楚的是如何讓Git的使用密鑰劑。
(的事情是,理想的私人應該有一個密碼,所以重新輸入每次是不現實的,關鍵劑是爲了簡化這個。)
既然每個人都應該使用私鑰受密碼保護,因此是一個實用的關鍵代理,通常不必配置密鑰文件的位置。
在windows中我使用pageant
作爲關鍵代理,它是PuTTY tools的一部分。只需運行pageant.exe
並添加您的私鑰。接下來,爲了讓Git使用pageant
來獲得您的私鑰,您需要將GIT_SSH
環境變量設置爲指向plink.exe
,例如/c/path/to/putty/plink.exe
。即使它使用UNIX風格的路徑分隔符,也可以在環境變量中像這樣設置它。
我不熟悉TortoiseGit,但我猜想它可能有它自己的plink.exe
,你也可以使用它。因爲你已經有TortoiseGit的工作,我猜測你甚至可能根本不需要關鍵代理,只需設置GIT_SSH
。但這些只是猜測。我用PuTTY和pagent描述的設置應該可行,因爲我自己使用它。在任何情況下,你應該應該使用密鑰代理,並使用密碼等保護您的密鑰等。
SWEET !!感謝所有的信息。聽起來很棒。我會給它一個鏡頭。 – mOrloff
爲了幫助其他人,當在Windows(7)中創建_GIT_SSH_環境變量時,我確實需要確保到plink.exe的路徑沒有任何空格,所以我將「Program Files」目錄的符號鏈接到了[ ** junction **](http://technet.microsoft.com/en-us/sysinternals/bb896768.aspx),並且我使用了Windows樣式路徑分隔符,因爲它幫助我排除了一些障礙。 – mOrloff
@mOrloff你可以用反斜槓轉義空格,或者你可以把值放在雙引號內。無需爲此使用連接點。 – janos
# Creates a new ssh key using the provided email
ssh-keygen -t rsa -C "[email protected]"
謝謝,但我不需要生成密鑰,我需要指定要使用哪個。我的TortoiseGit(&WinSCP)用該服務器進行身份驗證就好了,我只需要讓Git使用(git-cmd.bat)cli中的正確密鑰即可。 – mOrloff
您是否使用密鑰代理來存儲您的私鑰?像選美? – janos
我在問Q的時候並沒有意識到,但是。TortoiseGIT有一個瀏覽器正在運行的實例,所以只要我的GIT_SSH env var配置正確,plink就可以直接掛鉤了。 – mOrloff