Nerede

2012-06-26 37 views
14

nerede uygulamanın sürüm numarasını nasıl belirtileceği/hakkında herhangi kongre var mı Raylar uygulamanın sürüm numarası tanımlamak için? Yakut taşlar lib/mygem/version.rb için örneğinNerede

, genel olarak bu amaçla kullanılan dosyasıdır. Bir ilklendiricili Yapılandırma sınıfına kendi versiyonunu eklemek

module MySite 
    VERSION = "0.0.4" 

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

bu bakınız: http://stackoverflow.com/a/6178378/1352240 daha önce cevap olarak bunu yapabilirsiniz – YuriAlbuquerque

+0

: http://stackoverflow.com/a/23135266/2881964 – Arugin

cevap

16

Kendi sorumu yanıtlayacağım, daha iyi bir yanıt bulamadım.

Raylar yana uygulamam uygulamanın sürümü böylece oluşturmak MySite::Application::VERSION tarafından erişilebilir olması gerektiğini düşündüm MySite::Application temelde:

config/ilklendiriciler/version.rb

module MySite 
    class Application 
    VERSION = "0.0.4" 
    end 
end 

veya config/version.rb ve config/application.rb bu dosyayı gerektirir

+0

+ config/rota version.rb, rembmer yapılandırma sonunda '(__FILE __ '../ versiyonu') File.expand_path gerektiren' koymak gitmek için/application.rb – Ninjaxor

6

:

Benim tahminim böyle config/version.rb dosyası oluşturma olacağını

app_version.rb

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

Uygulamanın içinde şu sürümü alabilirim:

@app_version = Configuration.app_version 

Eğer sürümünü kullanmak istiyorum ama kod özellikle versiyonu aslında çalışıyorsa görebilmek için sık sık sürüm kullanmamın nedeni Emin değilim. Bu durumda, yeni bir sürüm olarak yansıtılmak üzere her bir kod revizyonuna ihtiyacım var, bu yüzden koddaki Git sürümünü kullanıyorum ve çoğu zaman sadece ilk birkaç karakterini göstereceğim, çünkü bu onu tanımlamak için yeterince benzersiz.

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

Bu süper harika. Bunu bir görünümden nasıl arayabilirim? Bir şey kaçırıyorum. – Riccardo