2016-09-27 21 views
2

我正在創建一個批處理文件,該文件可以自動克隆git存儲庫。 我把下面的一行到批處理文件如何在使用批處理文件運行git clone命令時提供密碼

git clone ssh://[email protected]/path 

但它的執行打我:

[exec] Permission denied, please try again. 
[exec] Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 
[exec] fatal: Could not read from remote repository. 

,因爲它要求輸入密碼。 我試圖改變命令

git clone ssh://user:[email protected]/path 

但它劇照問我密碼

什麼建議嗎?

+0

不是,請在下次閱讀問題以確認。在這篇文章中提供的解決方案在本文中被宣佈爲嘗試。 – Zucca

+0

這就是爲什麼投票的原因。對不起,我看到了一些ssh的東西。 –

回答

0

您可以使用sshpass工具來提供密碼給git

sshpass -p password git clone ssh://[email protected]/path 

但請注意,它不是安全明智的,使用密鑰是更好的選擇。

1

處理此問題的最佳方法是建立一個公鑰,因此您根本不需要密碼。它也恰好更安全。例如創建一個新的SSH密鑰對

$ ssh-keygen -t rsa -f ~/.ssh/git_key -C "[email protected]" 
Generating public/private rsa key pair. 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /Users/sowens/.ssh/git_key. 
Your public key has been saved in /Users/sowens/.ssh/git_key.pub. 
The key fingerprint is: 
SHA256:BxqMCuLKKa47IEzmAk7yRpv7MHuIwn9YWp5zlMs0O9A [email protected] 
The key's randomart image is: 
+---[RSA 2048]----+ 
|     | 
|  o   | 
|o . o .  | 
|==.. o .  | 
|X+.o o S .  | 
|*+* + E .  | 
|B=oo* * +  | 
|*.o*.= *   | 
|=+o+o o .  | 
+----[SHA256]-----+ 

那麼新git_key.pub文件添加到您的帳戶GitHub的:

https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

的文件將是一個文本文件,它看起來像這樣:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDjk8Ae7kGBhBM/hAhxe4BpjU1HIymRel6TWGJ3E17lki9qJroNjXpqxtsd27C2QSgdEvYEbX6Qv1jeTejpDqTnPdWvjnOWnk5zAo7IhKdKqzCMkBblmHR4LoJs/CeTuNG2vyTx7hb93nBPjni2EV05jW/vkoMoZbMV/4lO1A4oX5L52h5/hGDahfOLxjoU3wfkEssQkDo83GHzk5A5O6kSb6Lv9TFdaWCMqI0ZXOj3CuH3CSCIpoqS1Kibceu3kLHLN8KQZEXQmMrBEkJ69RfugfNtTddOO3gjhVmCAAUzZsRuxGQMDgmT0tnpQaJ0DdSxFwpEFSceR0/06Zykq+dl [email protected] 
+0

它不是github存儲庫,它是一個私人存儲庫,我沒有完整的訪問權限。 – Zucca

+0

聯繫回購管理員是有道理的。私有存儲庫是否公開github用戶界面,還是完全是命令行? –

+0

完全命令行 – Zucca

相關問題