9
A
回答
9
您可以从您的脚本中调用git
命令:
commit = `git show --pretty=%H`
puts commit
根据您的环境,你可能需要使用的完整路径git的二进制文件,并可能通过环境变量或--git-dir
指定GIT_DIR 。
1
我假定你想在你的HTML应用程序版本的地方?先决条件是您要以默认方式(使用Capitrano上传回购站点,而不是发送存档文件)部署您的回购。
您可以到Rails的初始化添加一些代码为outlined here。该方法将从上次提交中获取SHA1,并将其作为环境变量提供。
的另一种方式来做到这一点是有你Capistrano的任务产生在公共目录中提交SHA静态文件在里面。您可以在此文件中包含其他信息,这似乎很有用。
+0
使用capistrano 3,只需在当前文件夹中阅读REVISION文件即可。 – barbacan
15
像@meagar说,使用反引号从您的应用程序中执行shell命令,但你会发现这两个命令的更多有用:
完整的哈希值:
git rev-parse HEAD
哈希的前7个字符:
git rev-parse --short HEAD
相关问题
- 1. 从当前提交获取最新的git标记
- 2. git:仅获取当前修订版
- 3. 获取在Git中提交的任何文件的所有以前版本
- 4. 获取textarea的内容之前提交
- 5. 我该如何使用git提交当前的主提交?
- 6. 提交,没有版本控制下,以覆盖当前版本
- 7. 获取我的应用程序的当前网点版本
- 8. 如何获取当前的dev_appserver版本?
- 9. 获取当前的Flash版本(jQuery等)
- 10. 无法从git获取或提交
- 11. 如何获取Trigger.io应用程序的当前版本号
- 12. 获取当前应用的构建版本 - Xamarin.Android
- 13. 从Git使用非发布的Rails版本(可能通过提交编号)
- 14. git - 提交到版本库的日期
- 15. 的Git版本分行压扁提交
- 16. git签出特定提交前的版本
- 17. 在Subclipse中获取当前版本号?
- 18. 获取当前客户端Silverlight版本?
- 19. 如何获取当前EF版本
- 20. Hg-Git和Mercurial的当前版本(2)?
- 21. Git当前分支提交列表
- 22. WP8获取当前应用程序版本
- 23. 在Heroku应用程序中访问当前git提交号
- 24. 从提交消息获取Git提交散列
- 25. git提交后,覆盖克隆版本
- 26. Git获取特定版本
- 27. 如何从git中的先前提交中选择特定版本?
- 28. 如何从扩展中获取当前版本的Chrome?
- 29. 的Git版本号从TeamCity的8.1中特定分支提交
- 30. Passenger with Rails 1.2.6应用的当前版本?
学到新的东西今天,谢谢!不知道你可以使用back-quotes作为shell命令。 –
我没有用它,所以我不能从经验中建议,但你可以使用[砂砾(https://github.com/mojombo/grit),如果你想要的东西,更OO。 –
亚伦,被认为是砂砾,但这是一个比我的简单使用更为复杂的解决方案。 –