我想在windows cmd中执行svn命令。它应该由ruby代码启动。 这是我的代码。
svn = `svn log -r 120:125 %svn_repo%`
puts svn
这里,svn_repo是一个windows环境变量。我跑的时候会收到以下错误 代码:
svn: E155007: 'C:\Code\Ruby\%svn_repo%' is not a working copy
错误是什么,如何解决?
当我直接在cmd中执行它时,同样的命令有效。
答案 0 :(得分:3)
您可以使用ENV
访问您的环境变量。
所以这应该有效:
svn = `svn log -r 120:125 %s` % ENV['svn_repo']
puts svn
您可以使用替代方案:
svn = `svn log -r 120:125 #{ENV['svn_repo']}`
答案 1 :(得分:2)
假设svn_repo是一个局部变量,请尝试
svn = `svn log -r 120:125 #{svn_repo}`
puts svn