1

我正在学习使用 vlad 部署程序,我有一个问题。

由于我仍在学习,我不知道什么是与问题相关的,什么不是,所以如果我有点冗长,请多多包涵。

除了我的开发机器外,我还有 2 个用于新应用程序(测试和生产)的环境。

我已经想出了在我的 vlad.rake 中进行初始设置的方法:

namespace :test
  task :set
    set :domain, 'test.myserver.com'
  end
end

namespace :production
  task :set
    set :domain, 'www.myserver.com'
  end
end

这样我就可以在命名空间中拥有特定于环境的东西,并且仍然可以共享任务。例如,这将是测试的初始设置:

rake vlad:test:set vlad:setup vlad:update

这会在我的测试服务器上创建以下文件夹:

releases/
scm/
shared/
current -> symlink to last release (inside the releases folder)

我的问题是: scm 文件夹有什么意义?

每次我做 vlad:update 时,都会发生以下情况:

  1. svn checkout 上面的 scm/ 文件夹
  2. /releases/{date} 文件夹上的 svn 导出
  3. 更新当前符号链接

所以 scm 是我的存储库的副本......但是在 /releases/{date} 上有一个存储库的“导出”副本。那是应用程序使用的那个...... scm 似乎没有被任何人使用?

如果没有 scm 文件夹,我会不会很好?

4

1 回答 1

0

我会在这个问题上回答自己:

scm 文件夹似乎作为“文档”包含在内。它并没有真正在应用程序中使用,也不是真正需要的。

但是由于从 vlad:update 操作中删除它有点麻烦,并且执行只需要几秒钟,因此将其保留在那里更简单。

如果有人有更好的解释,我很乐意给他们正确的答案:)

于 2010-03-08T11:33:46.483 回答