我已经在我的 linux 服务器上设置了 gitolite,并将我的笔记本电脑添加到 gitolite-admin 存储库。我被迫格式化我的笔记本电脑(硬盘坏了),所以我需要想办法重新访问我的其他存储库 gitolite 控件。值得一提的是,如果有帮助的话,我在我的 linux 服务器上有 root 访问权限。我对 SSH/公钥等不是很精通,所以如果有人可以提供帮助,我将不胜感激。
问问题
3017 次
2 回答
11
如果您安装了 2.0.3 或更高版本,则可以使用以下gl-admin-push
命令从管理存储库的本地克隆推送:
请参阅gl-admin-push: bypassing gitolite 获取 gitolite-admin repo:
su
给你的 Gitolite 用户cd /tmp && git clone ~/repositories/gitolite-admin.git
- 用新的公钥替换旧的公钥
keydir/
,然后提交 ~/.gitolite/src/gl-admin-push
推动它;这将更新用户.ssh/authorized_keys
以集成您的新密钥
如果您使用的是 2.0.3 之前的版本,则可以使用以下gl-dont-panic
命令替换密钥:
su
给你的 Gitolite 用户将您的新公钥复制到
/tmp/username.pub
username.pub
应该与您当前的文件名相同keydir/
;您可以列出现有的keydir/
内容GIT_DIR="$HOME"/repositories/gitolite-admin.git git ls-tree master:keydir
运行
cd /tmp && ~/.gitolite/src/gl-dont-panic username.pub
以安装替换密钥
于 2011-08-12T05:35:58.280 回答
5
上面的答案很有帮助。但是对于 gitolite 3.04(可能更高版本)使用gitolite push而不是gl-admin-push。
于 2013-04-16T10:53:17.897 回答