是否有关于如何/在何处指定应用程序版本号的约定?
例如,对于ruby gems lib/mygem/version.rb
是通常用于此目的的文件。
我的猜测是创建config/version.rb
这样的文件:
module MySite
VERSION = "0.0.4"
# or in MySite::Application class
#
# class Application
# VERSION = "0.0.4"
# end
end
答案 0 :(得分:19)
我会回答我自己的问题,但我找不到更好的答案。
由于Rails应用程序基本上是MySite::Application
,我认为应该通过MySite::Application::VERSION
访问应用程序的版本,所以创建:
<强>配置/初始化/ version.rb 强>
module MySite
class Application
VERSION = "0.0.4"
end
end
或config/version.rb
并要求config/application.rb
答案 1 :(得分:8)
我使用初始化程序将自己的版本添加到Configuration类:
<强> app_version.rb 强>
class Configuration
class << self
attr_accessor :app_version
end
@app_version = 0.72
end
在应用程序中,我可以提取版本:
@app_version = Configuration.app_version
不确定为什么要使用该版本,但我经常使用版本控制,因此我可以看到特定版本的代码是否实际运行。在这种情况下,我需要将每个代码修订版本反映为新版本,因此我在我的代码上使用Git版本,并且通常只显示它的前几个字符,因为它可能足以识别它。
@git_version = `git show --pretty=%H`[0..39]