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本地獲取第n個提交/版本回復
- 2. 從當前提交獲取最新的git標記
- 3. 獲取當前unity3d版本
- 4. 從RTC獲取GIT版本
- 5. git:僅獲取當前修訂版
- 6. 獲取在Git中提交的任何文件的所有以前版本
- 7. 獲取textarea的內容之前提交
- 8. 我該如何使用git提交當前的主提交?
- 9. 提交,沒有版本控制下,以覆蓋當前版本
- 10. 如何在構建期間獲取當前版本的提交ID?
- 11. 獲取我的應用程序的當前網點版本
- 12. 如何獲取當前的dev_appserver版本?
- 13. 獲取當前版本的網頁
- 14. 獲取當前的Flash版本(jQuery等)
- 15. 從Git使用非發佈的Rails版本(可能通過提交編號)
- 16. 無法從git獲取或提交
- 17. 獲取當前應用的構建版本 - Xamarin.Android
- 18. 如何獲取Trigger.io應用程序的當前版本號
- 19. Git的工作流程提交到兩個以前的版本
- 20. git - 提交到版本庫的日期
- 21. 的Git版本分行壓扁提交
- 22. git簽出特定提交前的版本
- 23. 如何獲取當前EF版本
- 24. 在Subclipse中獲取當前版本號?
- 25. 獲取當前客戶端Silverlight版本?
- 26. Hg-Git和Mercurial的當前版本(2)?
- 27. WP8獲取當前應用程序版本
- 28. 如何獲取Maven/Tycho中的當前內部版本
- 29. Git當前分支提交列表
- 30. 如何在git中將提交應用於當前頭部?
學到新的東西今天,謝謝!不知道你可以使用back-quotes作爲shell命令。 –
我沒有用它,所以我不能從經驗中建議,但你可以使用[砂礫(https://github.com/mojombo/grit),如果你想要的東西,更OO。 –
亞倫,被認爲是砂礫,但這是一個比我的簡單使用更爲複雜的解決方案。 –