有什么方法可以将特定提交推送时显示到远程仓库?换句话说,我知道谁做了更改(以及何时提交),但我不知道它何时被推送到heroku的生产环境中(注意:heroku只是使用git push来部署)
理想情况下,它会是这样的:
$ git remote myprodrepo show 201421b78ae73a21bc6045a78b4b5db5c54697e7
我可以看到该提交何时被推入该回购。
注意:上面的语法不起作用,只是试图表明我想要完成的事情。
(我希望这个问题有道理 - 如果没有,请提出问题。)
答案 0 :(得分:1)
不,Git不会为这些操作记录任何日志。
像authorization layer这样的中级Gitolite可以保留这样的记录,但这可能不适合您当前的设置。
Bside heroku按suggested发布Chris,这是获取所有这些操作(不仅仅是推送)的最新记录的一种纯粹git方式是suggested here ,在远程git仓库的配置中:
# required for a bare repo
git config core.logAllRefUpdates true
git reflog --date=local master
答案 1 :(得分:1)
VonC是正确的,Git本身不会跟踪此信息,但在Heroku上,您应该能够使用heroku releases
命令获取此信息。
链接页面的示例输出:
Rel Change By When
v52 Config add AWS_S3_KEY jim@example.com 5 minutes ago
v51 Deploy de63889 stephan@example.com 7 minutes ago
v50 Deploy 7c35f77 stephan@example.com 3 hours ago
v49 Rollback to v46 joe@example.com 2010-09-12 15:32:17 -0700
请注意v51
显示何时将de63889
部署到Heroku。
然后,您可以使用heroku releases:info v51
获取有关此版本的详细信息:
=== Release v51
Change: Deploy de63889
By: jim@example.com
When: 7 minutes ago
Addons: deployhooks:email, releases:advanced
Config: MY_CONFIG_VAR => 42
RACK_ENV => production