gpt4 book ai didi

git - 如何查看 git 存储库的接收历史记录?

转载 作者:IT王子 更新时间:2023-10-29 01:28:49 26 4
gpt4 key购买 nike

我们有一个“中央”存储库,用于部署到我们的开发服务器。我知道 git log 会向我显示提交及其提交的日期/时间,但我想查看提交何时被推送到 repo 或何时被 repo 接收。有什么办法吗?

最佳答案

Git 的 reflogs将记录您指定的数据(日期和新提示提交)。

如果您的中央存储库是裸的,那么它的引用日志可能没有启用(创建裸存储库时默认情况下它们是不启用的)。像这样启用它们:

git config core.logAllRefUpdates true

您还应该考虑查看与 reflog 相关的其他配置选项(参见 git-config(1) 并搜索“reflog”):gc.reflogexpiregc.reflogexpireunreachable .

您可能还想启用receive.denyDeletes(因为在删除其分支时删除引用日志)。如果您只关心保留某些分支上的引用日志,那么您可以使用接收或更新 Hook 实现自己的分支前“拒绝删除”(请参阅​​ githooks(5))。

一旦你启用了reflogs,你就可以用
查看它们的内容 git reflog show branch-name或者
git log -g branch-name (两者都可以与其他 git log 选项结合使用)。

这仍然不会包含您可能需要的其他信息(例如谁在推送新提示*),但它可能会有所帮助。
<支持>*问题在于身份验证系统(SSH、SSH+gitolite、HTTP、HTTP+git-http-backend 等)通常不会将此信息向下传递到记录新 reflog 条目的级别;我记得某个组织(Gentoo?)正在探索有助于记录这些信息的东西(因为他们正在/正在考虑迁移到 Git),但我不记得细节了)。

关于git - 如何查看 git 存储库的接收历史记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3876206/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com