我在rails中启动了一个新项目并设置了一个服务器和assembla,以便在Assembla中安装我的subversion文件,并使用Capistrano部署到我的服务器。
问题在于,当我进行封顶部署时,我收到一条错误消息:
* executing `deploy'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
executing locally: "svn info https://subversion.assembla.com/svn/myappname/trunk/ -rHEAD"
command finished in 4687ms
* executing "svn export -q -r4 https://subversion.assembla.com/svn/myappname/trunk/ /home/administrator/myappname/releases/20111028232813 && (echo 4 > /home/administrator/myappname/releases/20111028232813/REVISION)"
servers: ["my.server.url"]
Password:
[my.server.url] executing command
** [my.server.url :: out] Authentication realm: <https://subversion.assembla.com:443> Assembla Restricted Area
** Password for 'administrator':
** [my.server.url :: out]
** [my.server.url :: out] Authentication realm: <https://subversion.assembla.com:443> Assembla Restricted Area
** Username:
除此之外,我添加了我的Assembla用户名,它只是在那里冻结而没有其他任何事情发生
我的deploy.rb有正确的svn网址和ID和密码(我通过检查浏览器中的网址并输入这些凭据来确定)
我也按照other post的建议尝试了svn清理,但我没有运气。
如何解决此问题?提前致谢
答案 0 :(得分:1)
在服务器上运行存储库的签出,保存密码,然后设置deploy.rb的svn信息,如下所示:
set :svn_user, Proc.new { Capistrano::CLI.password_prompt("SVN user: ") }
set :svn_password, Proc.new { Capistrano::CLI.password_prompt("SVN password for '#{svn_user}': ") }
set :repository,
Proc.new { "--username #{svn_user} --password #{svn_password} your_svn_url" }
其中your_svn_url设置为http而不是https
答案 1 :(得分:0)
除了@marimaf编写的内容之外,您还可以为svn用户名和密码设置环境变量(如果您愿意,可以识别安全问题)并使这个非常快速的提示。
所以,
$ export SVN_USER=username
$ export SVN_PASSWORD=password
并用
替换上面的集合set :svn_user, ENV['SVN_USER'] || Proc.new { Capistrano::CLI.password_prompt("SVN user: ") }
set :svn_password, ENV['SVN_PASSWORD'] || Proc.new { Capistrano::CLI.password_prompt("SVN password for '#{svn_user}': ") }