2013-10-04 50 views
1

我有一個JSON文件看起來像GIT版本號和日期:獲取使用Ruby更新JSON文件

{ 
    "git" : { 
     "version" : "abc123", 
     "date" : "2013/10/04 5:55pm" 
    }, 
    .. 
} 

所以我有一個rake任務的準備我的部署應用程序,而我想要得到的git修訂#和日期和更新我的json文件與此信息。

這樣做的最好方法是什麼?

+0

也許在'rake'任務中使用backsticks命令(例如'''git [command] \'')來執行相應的git命令,解析結果並更新json文件。 – fmendez

回答

2

我希望這段代碼對您有所幫助。

require 'json' 
latest_revision = `git rev-parse HEAD` 
latest_revision_date = `git log -1 --format=%cd` 
json_data = JSON.parse(IO.read('./json.js')) 
json_data["git"]["version"] = latest_revision 
json_data["git"]["date"] = latest_revision_date 
f = File.open("./json.js", "w") 
f.write(json_data) 
f.close