git-ftp 配置密码以#结尾

git-ftp config settings with password ending in #

我的 .git/config 文件中的 git-ftp 信息是(显然这是虚拟信息):

[git-ftp]
   user = myName@mydomain.com
   url = ftp.mydomain.com
   password = PassWord#

当我用 ftp

赶上我的本地回购时
git ftp catchup

我收到错误:

curl: (67) Access denied: 530
Tue, Oct 06, 2015 10:17:04 AM: fatal: Could not upload file: '.git-ftp.log'., exiting...
Tue, Oct 06, 2015 10:17:04 AM: fatal: Could not upload., exiting...

如果我改为从命令行执行此操作:

git ftp catchup -u myName@mydomain.com -p 'PassWord#' ftp.mydomain.com

我没有收到错误。

我发现这个问题是因为我的密码以 # 结尾。我尝试更改我的配置行,将密码放在引号中:

password = 'PassWord#'

但这不起作用。

显然我只是更改了我的密码,所以它可以工作,但我想弄清楚为什么 # 使配置文件无法正常工作,但它在命令行中工作正常。任何人都知道我如何解决这个问题以便配置文件正常工作?

提前致谢!

正如 Eric J 指出的那样,# 是 .git/config 文件中的注释标记。我已经尝试在密码周围使用单引号,但失败了。很惭愧地说我没想到要尝试双引号。

进一步的测试显示,在密码周围使用双引号“”允许配置文件使用带有 #.

的密码
[git-ftp]
  user = myName@mydomain.com
  url = ftp.mydomain.com
  password = "PassWord#"