我正在使用GIT_REPO_URL="https://$GIT_ACCOUNT:$USER_PW@github.com/XXXX/xxx"
语法。
最近我更改了密码,所以它以@结尾。
例如我的密码是123456789 @。
当我输入密码时,它说。 Couldn't resolve host '@github.com'
基本上,回购网址现在等于GIT_REPO_URL="https://myAccountName:123456789@@github.com/XXXX/xxx"
。
有谁知道,如何解决这个问题?
答案 0 :(得分:7)
你必须" URL编码"用户名和密码。有关https://tools.ietf.org/html/rfc3986的信息,请参见percent encoding。
@
将被编码为%40
,因此网址如下:https://myAccountName:123456789%40@github.com/XXXX/xxx
以下是一个工具:http://meyerweb.com/eric/tools/dencoder/或只使用ASCII表;)。
备选方案是使用git store存储凭据,使用.netrc file或使用SSH密钥。
答案 1 :(得分:3)
为什么不切换到ssh并删除密码?
只需按照这些步骤操作即可立即设置ssh密钥:
生成新的ssh密钥(如果已有密钥,则跳过此步骤)
ssh-keygen -t rsa -C "your@email"
将密钥设置在home/.ssh
目录(或Windows下的Users/<your user>.ssh
)后,打开它并复制内容
SSH keys
Add ssh key
你们都准备出发了: - )