使用密码@的Git克隆

时间:2014-11-27 00:14:19

标签: git shell github command-line escaping

我需要逃避使用密码的@,因为它与主机混淆。

示例1: git clone https://user:p@ssword@github.com/user/repo.git

当我运行上面的例子时,这是错误的,因为密码有@他知道下一个参数是主机。试图逃脱\或你可以使用“”之间的网址,但它不是。

示例2: (echo user; echo p@ssword) | git clone https://github.com/usuario/repo.git

当我只使用命令git clone https://github.com/usuario/repo.git时,他会询问用户和密码,所以我使用了上面的命令,这与我在一行上更改root密码的命令相同。

3 个答案:

答案 0 :(得分:6)

我认为您正在寻找的是逃避特殊字符@,您可以使用编码%40而不是@。此链接可能会有助Escape @ character in git proxy password

答案 1 :(得分:1)

您可以将 @ 替换为其URL编码格式%40

如果您的密码是 password @ 99 。将其更改为 password%4099

git clone https://username:password%4099@bitbucket.org/sarat.git

答案 2 :(得分:0)

检查链接Git Configure

在本地配置您的git帐户 -

git config --global user.name myName

git config --global user.email myEmail

以下命令会将密码保存在内存中一段时间​​。

$ git config --global credential.helper cache

设置git以使用凭证内存缓存

$ git config --global credential.helper 'cache --timeout=3600'

将缓存设置为1小时后超时(设置为秒)

希望这会对你有所帮助