如何从github自动导入最新的github提交号?
目标是让这个数字在你的网页页脚上可见,就像日期一样。
什么结构:
我有一个使用Capistrano部署的生产分支。我想显示最新的github提交号,以及它被部署的日期。
假设你使用gem settingslogic
作为应用设置,把它放在你的初始化器中:
git_log = `git log -1 --pretty="format:%H %ci"`
if git_log =~ /^([dw]+?)s(.+)$/
Settings[:git_revision] = $1
Settings[:git_update] = $2.strip
end
您将在Settings.git_revision
中有最后一次git提交SHA,在Settings.git_update
中有提交日期。
另外,你可以得到最后一个标签:
git_tag = `git describe --tags --abbrev=0`
Settings[:git_tag] = git_tag.strip if git_tag
它将在Settings.git_tag
中可用。
更新:
我发布了一个小的ruby gem git-revision。有了它,你可以简单地做:
"commit: #{Git::Revision.commit} date: #{Git::Revision.date}"
作为可能的解决方案,您可以使用git smudge|clean filters(阅读"关键字扩展"部分)查看(通用)解决方案