2012-06-26 7 views
14

¿Existe alguna convención sobre cómo/dónde especificar el número de versión de la aplicación?Dónde definir el número de versión de la aplicación Rails

Por ejemplo, para las gemas de rubí lib/mygem/version.rb es el archivo generalmente utilizado para ese propósito.

Mi conjetura sería la creación de config/version.rb archivo así:

module MySite 
    VERSION = "0.0.4" 

    # or in MySite::Application class 
    # 
    # class Application 
    # VERSION = "0.0.4" 
    # end 
end 
+0

Ver esto: http://stackoverflow.com/a/6178378/1352240 – YuriAlbuquerque

+0

Puede hacer esto como he respondido antes : http://stackoverflow.com/a/23135266/2881964 – Arugin

Respuesta

16

Responderé a mi pregunta, no he podido encontrar una mejor respuesta.

Desde Rails aplicación es básicamente MySite::Application pensé que la versión de aplicación debe ser accedida por tanto, crear MySite::Application::VERSION:

config/inicializadores/version.rb

module MySite 
    class Application 
    VERSION = "0.0.4" 
    end 
end 

o config/version.rb y requieren este archivo desde config/application.rb

+0

+ Para ir a la ruta config/version.rb, repita para poner 'require File.expand_path ('../ version', __FILE __)' al final de config/application.rb – Ninjaxor

6

agrego mi propia versión de la clase Configuración con un inicializador:

app_version.rb

class Configuration 
    class << self 
    attr_accessor :app_version 
    end 
    @app_version = 0.72 
end 

Dentro de la aplicación, puedo extraer la versión:

@app_version = Configuration.app_version 

No estoy seguro de por qué quieres usar la versión, pero a menudo uso el control de versiones para poder ver si realmente se está ejecutando una versión concreta del código. En ese caso, necesito que cada revisión de código se refleje como una nueva versión, así que uso la versión de Git en mi código y, a menudo, solo muestro los primeros caracteres, ya que es lo suficientemente único para identificarlo.

@git_version = `git show --pretty=%H`[0..39] 
+0

Esto es súper genial. ¿Cómo lo llamo desde una vista? Me estoy perdiendo algo. – Riccardo

Cuestiones relacionadas