2017-09-15 131 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