我需要允许使用电子邮件地址作为用户名访问svn存储库。我可以通过ssh登录到服务器没有问题,将电子邮件地址“@”更改为“$”,如下所示:
ssh user.name$mydomain.com@mydomain.com
不幸的是,这同样适用于svn + ssh。这让我无处可去:
svn ls svn+ssh://user.name$mydomain.com@mydomain.com/home/accountname/data/svn/repos
任何人都知道这通常是怎么做的?
答案 0 :(得分:5)
由于它是一个URL,您是否尝试过对@符号进行URL编码?我不知道这是否有效,但您可以尝试user.name%40mydomain.com
。
答案 1 :(得分:0)
正如之前的回答所说,如果你在UNIX机器上,你的shell程序可能会尝试替换$,就好像它是一个变量。尝试通过在此之前加入反斜杠来转义“$”符号:
svn ls svn+ssh://user.name\$mydomain.com@mydomain.com/home/accountname/data/svn/repos
或者,如果您在URL周围使用单引号,BASH或您使用的任何shell都不应该尝试替换$。
svn ls 'svn+ssh://user.name$mydomain.com@mydomain.com/home/accountname/data/svn/repos'
答案 2 :(得分:-1)
您正在使用的shell是否替换了$? SVN只有用户名而不是用户+电子邮件进行身份验证。我认为这不起作用。