Где определить номер версии приложения Rails

Существует ли какое-либо соглашение о том, как/где указывать номер версии приложения?

Например, для рубиновых камней 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

Ответы

Ответ 1

Я отвечу на свой вопрос, я не смог найти лучшего ответа.

Так как приложение Rails в основном MySite::Application, я думал, что к версии приложения следует обращаться MySite::Application::VERSION, поэтому создайте:

конфигурации/инициализаторы/version.rb

module MySite
  class Application
    VERSION = "0.0.4"
  end
end

или config/version.rb и требуется этот файл от config/application.rb

Ответ 2

Я добавляю свою собственную версию в класс 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]