重新创建Gitolite-admin Repo

时间:2012-11-29 17:41:42

标签: git repository gitolite git-clone

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

问题是当我跑

git clone gitolite@repo1:gitolite-admin.git

我收到错误

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

使用包含

的服务器的conf / gitolit.conf文件
repo    gitolite-admin
    RW+     =   macbook

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

git clone gitolite@repo1:wp_of_travel

当我跑步时

ssh gitolite@repo1 info

我退回了一些项目,但是gitolite-admin没有列在那里。

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

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

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

1 个答案:

答案 0 :(得分:4)

  

当我跑步时

ssh gitolite@repo1 info
  

我退回了一些项目,但是gitolite-admin没有列在那里。

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

如果您有权访问服务器,则可以在本地克隆gitolite-admin.git(文件协议,此处没有ssh),添加您的名称(在您的公共ssh密钥之后),回退并运行{{1} (如果你使用的是gitolite v3),为了让gitolite更新gitolite setup文件。


使用gitolite V2,页面 ~/.ssh/authorized_keys:绕过gitolite-gitolite-admin repo 非常有用:

  

将repo克隆到某个安全位置并cd到它:

gl-admin-push
  

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

     

完成后,请使用此程序代替cd /tmp git clone ~/repositories/gitolite-admin.git cd gitolite-admin   例如,使用 git push <push arguments>

代替git push -f

OP edwardgd确认in the comments

  

看起来之前的系统管理员已经完成了root用户和用户gitolite的安装失败,这就是为什么我感到困惑。
  作为参考,一旦您知道应用它的位置,gl-admin-push -f方法就非常简单。