重新创建Gitolite-admin Repo

ede*_*.io 5 git repository git-clone gitolite

我接管了一个项目,前一个管理员没有提供任何帮助,没有文档和没有移交......我正在尝试克隆gitolite-admin repo,以便我可以添加自己作为用户.

问题是我跑的时候

git clone gitolite@repo1:gitolite-admin.git
Run Code Online (Sandbox Code Playgroud)

我收到错误

R access for gitolite-admin DENIED to macbook
(Or there may be no repository at the given path. Did you spell it correctly?)
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

使用服务器的conf/gitolit.conf文件

repo    gitolite-admin
    RW+     =   macbook
Run Code Online (Sandbox Code Playgroud)

我的存储库包含gitolite-admin.git等,我成功运行了

git clone gitolite@repo1:wp_of_travel
Run Code Online (Sandbox Code Playgroud)

我跑的时候

ssh gitolite@repo1 info
Run Code Online (Sandbox Code Playgroud)

我退回了一些项目,但没有列出gitolite-admin.

我的情况是没有希望的还是我错过了一些我可以重建回购并再次克隆它的东西?

如果有帮助,我确实可以完全控制服务器...

对此事的任何帮助或建议都非常受欢迎.谢谢

Von*_*onC 4

当我跑步时

ssh gitolite@repo1 info
Run Code Online (Sandbox Code Playgroud)

我返回了许多项目,但 gitolite-admin 没有在那里列出。

这是正常的:如果 macbook 没有在gitolite.conf存储库的该项目中注册(不是您自己的本地项目gitolite.conf,而是当前存储在存储库中的项目gitolite-admin.git),您将不会看到它列出。

如果您有权访问服务器,您可以gitolite-admin.git在本地克隆(文件协议,此处没有 ssh),添加您的名称(在您的公共 ssh 密钥之后),推回并运行gitolite setup(如果您使用的是 gitolite v3),以便gitolite 来更新~/.ssh/authorized_keys文件。


使用 gitolite V2,页面gl-admin-push:绕过 gitolite for gitolite-admin 存储库很有帮助:

将存储库克隆到某个安全位置并 cd 到它:

cd /tmp
git clone ~/repositories/gitolite-admin.git
cd gitolite-admin
Run Code Online (Sandbox Code Playgroud)

对该克隆进行任何您想要的更改并提交。您可以添加新密钥、更改conf 文件或任何需要修复的内容。如果这是修复某些可能导致您失去访问权限的配置问题的最简单方法,您甚至可以重置到较旧的提交(倒回)。

完成后,git push <push arguments>请使用此程序代替 。
例如,git push -f使用代替gl-admin-push -f。

OP edwardgd在评论中确认:

看起来之前的系统管理员对 root 以及用户 gitolite 的安装都失败了,这就是我感到如此困惑的原因。
作为参考,adminpush一旦您知道在哪里应用该方法,该方法就非常简单。