我在哪里可以找到 Gitosis 在 Linux 中管理的存储库的位置

Where can I find for the location of the repos managed by Gitosis in Linux

我们在 Linux OS 服务器中使用 Gitosis 来管理我们的项目。有一次,我错误地推送了包含错误的配置文件,然后我无法再从服务器推送更改或克隆其他项目的副本,包括 gitosis-admin 本身。现在,我需要使用 root 用户登录到服务器并在那里编辑配置文件。

所以,当我登录到服务器时,我看到了这些文件:

然后我 cd 进入 gitosis-admin:

然后我再次进入 gitosis-admin:

然后我vim配置文件。这是我看到的:

内容显然不是我所期望的,因为我应该在这个配置文件中列出其他 repos。

我还仔细检查了 git reflog 以查看提交历史记录:

然后我想可能还有另一个 gitosis-admin 位于其他地方所以我使用命令搜索:find / -type d -name 'gitosis-admin'

这是我得到的:

这两个目录是我查的。而且它们与我本地计算机中的不匹配。

我尝试搜索我们的其中一个项目,但仍然一无所获。

然后我认为 root 可能无法访问 repo 文件,所以我通过执行以下命令切换到 git 用户:

sudo git

但是,我仍然找不到存储库的目录。

所以现在,我需要知道存储库位于何处,以便我可以在那里找到 "real" gitosis-admin。

您可能想知道我是不是查错了服务器。所以为了证明我没记错,这是我连接的主机地址的截图:

这是源代码树中显示的 gitosis-admin git 存储库的远程地址:

一个典型的目录是 git 用户的 $HOME 目录的 repositories sub-directory,即

~git/repositories

可以使用配置文件中 gitosis 部分的 repositories 键更改此位置,通常是 [=28= 中名为 .gitosis.conf 的文件] 用户的主目录。

要回答隐含的问题(即要修复哪个文件以恢复 gitosis 访问权限),这也是 ~git/.gitosis.conf

(这些都记录在 gitosis repository's readme file 中。)