是否有一个混帐活动日志?(Is there a git activity log?)

2019-08-01 08:08发布

出事真的错了这里。 请允许我给的背景。

今天我试着推到我们公司默认裸msysgit Windows服务器,并获得到处复制可怕的错误消息SO大约推动非裸露 。 我以为消息很奇怪,因为我的服务器应该是光秃秃的。 昨天它工作得很好。

然后,我注意到core.bare时,不知何故,设置为false ! 这与inited回购--bare ,它从未有过的“ .git在它”文件夹中。 然后我去检查,它就在那里,一个git的文件夹,这对我似乎从哪儿冒出来,真没劲! 请问谁可以做一些有唯一的其他人,并肯定的是,他没有。

编辑 :我只注意到它只能发生master分支服务器的.git似乎已经在10月1日,因为我不推到哪些可创建master经常。

该文件夹具有3GB和裸露的文件夹,与幽灵般的旁边所有的git结构.git ,有6GB。 虽然我的本地git的有16 GB,所以我不知道这是怎么回事那里...甚至,我无法检查git loggit reflog 。 无论是裸设置为true或false我得到同样的错误fatal: bad default revision 'HEAD' 。 现在我觉得它已经时间来考虑如何恢复回购 ...

但我经过所有的恢复教条之前,我想知道:

  • 是否有某种git的活动日志 ,这样我就可以看到混帐发出的所有指令,并通过谁?

找不到类似的话,我怕没有。

Answer 1:

这就是为什么我们已经安装了gitolite V3 (通过简单地克隆了回购 ,并安装它像这样安装脚本 ),我们的中央混帐回购协议的服务器上。

Gitolite将拦截任何GIT中的命令,和(除其主要授权框架功能)将记录在所述命令~/.gitolite/logs/gitolite-log-xxx

这里是这样的日志的提取物:

2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/triggers/post-compile/update-git-configs,POST_COMPILE
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/triggers/post-compile/update-gitweb-access-list,POST_COMPILE
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/commands/access,%,gitweb,R,any
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/commands/git-config,-r,%,gitweb\.
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/triggers/post-compile/update-git-daemon-access-list,POST_COMPILE
2012-08-16.12:20:20     29507           system,/home/gitadmin/gitolite/bin/commands/access,%,daemon,R,any
2012-08-16.12:20:20     29507   END
2012-08-20.07:39:12     17683   ssh     ARGV=gitoliteadm        SOC=git-upload-pack 'gitolite-admin'    FROM=127.0.0.1
2012-08-20.07:39:12     17683           access(gitolite-admin, gitoliteadm, R, 'any'),-> refs/.*
2012-08-20.07:39:12     17683           trigger,Writable,access_1,ACCESS_1,gitolite-admin,gitoliteadm,R,any,refs/.*
2012-08-20.07:39:12     17683   pre_git gitolite-admin  gitoliteadm     R       any     -> refs/.*
2012-08-20.07:39:12     17683           system,git,shell,-c,git-upload-pack '/home/gitadmin/repositories/gitolite-admin.git'
2012-08-20.07:39:12     17683   END
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/triggers/post-compile/update-git-configs,POST_COMPILE
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/triggers/post-compile/update-gitweb-access-list,POST_COMPILE
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/commands/access,%,gitweb,R,any
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/commands/git-config,-r,%,gitweb\.
2012-08-16.12:20:19     29507           system,/home/gitadmin/gitolite/bin/triggers/post-compile/update-git-daemon-access-list,POST_COMPILE
2012-08-16.12:20:20     29507           system,/home/gitadmin/gitolite/bin/commands/access,%,daemon,R,any
2012-08-16.12:20:20     29507   END
2012-08-20.07:39:12     17683   ssh     ARGV=gitoliteadm        SOC=git-upload-pack 'gitolite-admin'    FROM=127.0.0.1
2012-08-20.07:39:12     17683           access(gitolite-admin, gitoliteadm, R, 'any'),-> refs/.*
2012-08-20.07:39:12     17683           trigger,Writable,access_1,ACCESS_1,gitolite-admin,gitoliteadm,R,any,refs/.*
2012-08-20.07:39:12     17683   pre_git gitolite-admin  gitoliteadm     R       any     -> refs/.*
2012-08-20.07:39:12     17683           system,git,shell,-c,git-upload-pack '/home/gitadmin/repositories/gitolite-admin.git'
2012-08-20.07:39:12     17683   END


Answer 2:

你可以使用引用日志怎么看参考资料中移动,其登记的活动有时候不是从通常的git的日志可见(如快进合并),但我不认为它应该在你的情况下,无所谓。

我相信你有结构一样,(这是建议把git的扩展裸露的回购协议名称的方式,所以很容易区分):含../core.bare.git/分支机构,配置,HEAD,钩,信息,对象等../core.bare.git/.git包含它自己的分支机构,配置等我想你回购的服务器是完全好,你只需要从中双重校验删除git的文件夹该配置文件仍然说这是一个裸露的回购协议。



文章来源: Is there a git activity log?