锁定在gitolite和cant gl管理推送之外
我愚蠢地用gitolite的ssh密钥格式化了我的笔记本电脑硬盘,我拥有对我的服务器的root访问权限,并遵循这个答案,成功地在tmp文件夹中复制了我的repo并修复了该文件 我的问题是,我在执行“gl管理员推送”时出错,错误如下:锁定在gitolite和cant gl管理推送之外,git,ssh,gitolite,Git,Ssh,Gitolite,我愚蠢地用gitolite的ssh密钥格式化了我的笔记本电脑硬盘,我拥有对我的服务器的root访问权限,并遵循这个答案,成功地在tmp文件夹中复制了我的repo并修复了该文件 我的问题是,我在执行“gl管理员推送”时出错,错误如下: Unable to determine correct path for gitolite scripts from the authkeys file. Perhaps you haven't installed gitolite yet? Or perhap
Unable to determine correct path for gitolite scripts from the authkeys file.
Perhaps you haven't installed gitolite yet?
Or perhaps this is an HTTP mode install? If so, please set the GL_BINDIR
environment variable to the full path of the gitolite scripts, then re-try
this command. For example (if you followed doc/http-backend.mkd precisely):
GL_BINDIR=/var/www/gitolite-home/bin /home/git/bin/gl-admin-push
在我把自己锁在外面之前,我的gitolite安装运行良好(facepalm)
关于如何摆脱这种混乱局面的一些新想法?意识到,如果执行的用户没有正确注册其公钥,也可能出现此消息
该键需要使用gitolite脚本设置
这与以下内容一致:
#如果没有传入GL_BINDIR,请查找它
[-z“$GL_BINDIR”]&&
GL|BINDIR=`perl-ne'print($1),如果/^command=“(.+?)\/GL-(time | auth command)/”<$HOME/.ssh/authorized_key,则退出`
#GL_BINDIR还不知道?我们有个问题。。。
[-z“$GL_BINDIR”]&&{
回声“
无法确定authkeys文件中gitolite脚本的正确路径。
意识到,如果执行的用户没有正确注册其公钥,也可能出现此消息
该键需要使用gitolite脚本设置
这与以下内容一致:
#如果没有传入GL_BINDIR,请查找它
[-z“$GL_BINDIR”]&&
GL|BINDIR=`perl-ne'print($1),如果/^command=“(.+?)\/GL-(time | auth command)/”<$HOME/.ssh/authorized_key,则退出`
#GL_BINDIR还不知道?我们有个问题。。。
[-z“$GL_BINDIR”]&&{
回声“
无法确定authkeys文件中gitolite脚本的正确路径。
我也有同样的问题
修复方法是使用命令=“…”更新服务器上mygit
用户(使用gitolite的用户)的~/.ssh/
文件夹中的授权密钥文件
line VonC,加上我想手动添加的用户的ssh pubkey。只是为了使条目与其他现有条目保持一致
此外,我还必须删除~/ssh/old\u authkeys
文件,因为gitolite似乎一直在引用它,因此在这个过程中删除了更新的授权的\u keys
文件
由于第二部分的原因,我觉得自己有资格担任一个额外的职位
编辑:
似乎每次我用新的repo或组设置更新gitolite配置时,authorized_keys
都会移动到old_authkeys
:|
编辑2:
所有问题的根源是…没有以名为git的用户身份登录
git@server:repo
当尝试从服务器访问服务器repo时,但作为,即myuser
这导致配置混乱,并且一次又一次地恢复了授权密钥
文件。
一旦我为用户git
(而不是myuser
)设置了ssh密钥,以git
(不是myuser
)的身份登录,我就通过
git clone /local/path/on/server/to/gitolite-admin
(then I set the right permissions in the gitolite config)
gl-admin-push
一切都完成了…当以git
用户身份登录时,gl admin push工作正常
之后定期使用git克隆git@server:repo
-git-add.
-git-commit
-git-pushgit@server:回购
是可能的
另一个用户权限引发大麻烦的案例
//获得的知识伴随着智慧而来,它永远不值得花时间在上面。我也有同样的问题
修复方法是使用命令=“…”更新服务器上mygit
用户(使用gitolite的用户)的~/.ssh/
文件夹中的授权密钥文件
line VonC,加上我想手动添加的用户的ssh pubkey。只是为了使条目与其他现有条目保持一致
此外,我还必须删除~/ssh/old\u authkeys
文件,因为gitolite似乎一直在引用它,因此在这个过程中删除了更新的授权的\u keys
文件
由于第二部分的原因,我觉得自己有资格担任一个额外的职位
编辑:
似乎每次我用新的repo或组设置更新gitolite配置时,authorized_keys
都会移动到old_authkeys
:|
编辑2:
所有问题的根源是…没有以名为git的用户身份登录
git@server:repo
当尝试从服务器访问服务器repo时,但作为,即myuser
这导致配置混乱,并且一次又一次地恢复了授权密钥
文件。
一旦我为用户git
(而不是myuser
)设置了ssh密钥,以git
(不是myuser
)的身份登录,我就通过
git clone /local/path/on/server/to/gitolite-admin
(then I set the right permissions in the gitolite config)
gl-admin-push
一切都完成了…当以git
用户身份登录时,gl admin push工作正常
之后定期使用git克隆git@server:repo
-git-add.
-git-commit
-git-pushgit@server:回购
是可能的
另一个用户权限引发大麻烦的案例
//获得的知识伴随着智慧而来,它永远不值得花时间在上面。那么您的GL\u BINDIR
环境变量的值是什么?这是授权密钥中的一个问题,我在公钥之前缺少命令。例如:command=“/home/git/bin/GL auth command myusername”,无端口转发,无X11-转发,无代理转发,无pty-现在可以正常工作了。我在下面添加了它作为一个答案,并提供了更多的参考,以及您的GL\u BINDIR
环境变量的值是什么?这是授权密钥中的一个问题,我在我的公钥之前缺少命令。例如:command=“/home/