Git最后提交哈希和当前版本

Kot*_*taa 1 elixir phoenix-framework

在我的Elixir/Phoenix应用程序中,我想在html页面上的mix.exs文件中显示来自git和版本号的当前提交哈希.我怎样才能做到这一点?也就是说,是否可以访问这种信息?

gui*_*man 7

要提取当前提交哈希,我有这个解决方案:

{hash, _} = System.cmd("git", ["rev-parse", "HEAD"])
# => {"5f6910ce1f42d5026d0ec5544ce6df9c3f8caf17\n", 0}

String.trim(hash)
# => "5f6910ce1f42d5026d0ec5544ce6df9c3f8caf17"
Run Code Online (Sandbox Code Playgroud)

要获取应用版本,您可以尝试以下方法:

{:ok, vsn} = :application.get_key(:my_app, :vsn)
# => {:ok, '0.1.1'}

vsn
# => '0.1.1'

List.to_string(vsn)
# => "0.1.1"
Run Code Online (Sandbox Code Playgroud)

用您的app atom替换atom:my_app.

或者您使用:

Mix.Project.config[:version]
# => "0.1.1"
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参见Mix.Project.config.