我想要一个简单的 git post-commit 操作来打印您上次将更改推送到每个遥控器的日期。这样做的动机是简单地提醒您的存储库可能会变得多远,或者很好地提醒您将更改备份到远程裸存储库。
这是否存在,如果没有任何关于如何做到这一点的快速建议?
如果它不存在,我最初的想法是:
- 在提交后,为 .git/refs/remotes/ 中的每个远程分支执行“git log [remote/branch]”并解析出日期信息。
欢迎对这些步骤的开发策略提供任何帮助(命令行 linux 是我的平台)
谢谢!
我想要一个简单的 git post-commit 操作来打印您上次将更改推送到每个遥控器的日期。这样做的动机是简单地提醒您的存储库可能会变得多远,或者很好地提醒您将更改备份到远程裸存储库。
这是否存在,如果没有任何关于如何做到这一点的快速建议?
如果它不存在,我最初的想法是:
欢迎对这些步骤的开发策略提供任何帮助(命令行 linux 是我的平台)
谢谢!
As mentioned in "Is there a way in git to obtain a push date for a given commit?", you need for your bare repo (to which you are pushing to) to enable logAllRefUpdates
git config core.logAllRefUpdates true
And then you can have a look at the dates with git reflog
git reflog --date=local master
(but reflog is time limited, 90 days per default)
Other ways usually with rev-parse (as in "How do I get the ID of the last push in git?"), more about the SHA1.
提交完成后,您可以使用 git 的提交后挂钩来显示此数据。挂钩脚本位于 .got/hooks 您可以使用此处发布的命令之一来构建挂钩脚本。