2017-06-29 239 views
1

我在我們的版本中使用Jenkins 因此,我已經在使用GIT插件 這個插件允許我指定Jenkins憑證,我們已經指定並安裝了/設置SSH密鑰。在Jenkins用戶的Windows Git中指定SSH證書/密鑰

然而,在構建結束時,我想git標記我的回購。我打電話的git.exe命令行,我得到一推此錯誤:

Permission denied (publickey). 
fatal: Could not read from remote repository. 

理想情況下,我們不希望使用其他插件(例如Git的出版商),因爲我們正在努力通過我們自己的腳本來做更多的事情,因爲我們未來可能不會使用詹金斯。

此外,理想情況下,如果我們不需要,我們不希望在構建服務器上安裝項目。

所以問題是 - 我怎樣才能在給定的'會話'的命令行上指定SSH密鑰/憑據?

謝謝。

+0

你可以添加你的Jenkins代碼嗎? –

回答

1

把這個shell腳本:

ssh -i path-to-your-private-key 

設置路徑shell腳本中GIT_SSH詹金斯。然後git pull將使用該代替ssh來訪問遠程存儲庫。

或者,您可以在中爲Jenkins運行的帳戶配置ssh,但如果您的Jenkins作爲Windows服務運行,那麼可能會變得棘手。

+1

是的,它作爲Windows服務運行。什麼是GIT_SSH? – Raymond

+0

這是一個環境變量。請參閱https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables – jingx