2017-09-15 292 views
0

我想通過使用簡單的bash腳本來克隆遠程存儲庫,但我無法通過提示,其中github要求我的用戶名和密碼。 這裏是我的腳本的濃縮版:Bash腳本git克隆憑證提示

#!/bin/bash 
REPO=$1 
USERNAME=$2 
PASSWORD=$3 
git clone $REPO 
expect "Username for 'https://github.com':" 
send $USERNAME 

send命令似乎並不像它通過用戶名變量,因爲提示從來沒有通過「對‘https://github.com’用戶名:」

我嘗試管道和heredoc方法沒有任何運氣。 任何幫助很高興讚賞。

謝謝!

+1

你可以儘量避免使用'expect'並形成命令用的用戶名和密碼...執行正如在這裏看到:https://stackoverflow.com/questions/10054318/how-to-provide-用戶名和密碼運行時git-clone-gitremote-git – bc2946088

+0

非常感謝!會嘗試一下。 – Anthony

+0

它與一個警告一起工作,urlencode密碼中的任何特殊字符。 – Anthony

回答

0

可以包括在git push命令,像這樣的憑據:
git push https://<USER>:<PASS>@github.com/asdf/blah.git
我希望這可以幫助;讓我知道如果這不起作用。
jBit