2015-07-21 83 views
1

我登录到我的服务器作为管理员(不是Git的用户,这可能是一个错误)后,并没有:Git的扩展:无法推到回购将其改名(gitolite)

mv oldrepo.git newrepo.git

然后,我编辑gitolite.conf,从...

repo oldrepo 
    RW+  = id_rsa 

...到...

repo newrepo 
    RW+  = id_rsa 

...并推送到gitolite管理员回购。

现在,当我试图推到newrepo,我得到以下错误(使用Git扩展):


“C:\ Program Files文件(x86)的\的Git \ BIN \ git.exe”推--recurse-子模块=检查--progress “原点” 参/头/主:参/头/主

致命:W任何newrepo id_rsa由fallthru (或你错误拼写的reponame) 致命被拒:无法从远程存储库读取。

请确保您拥有正确的访问权限 并存在存储库。 完成


我仍然能推到我所有的其他存储库就好了,没有问题的。

我做了什么?

+0

仅供参考,您显示消息的这部分:“致命的:无法从远程存储库中读取”不是来自gitolite;显然有/是一个OS权限问题。 – sitaram

回答

1

听起来像是你移动的回购是可能问题。我会在服务器上跳回去,并用ls -l检查newrepo.git的拥有者。

如果newrepo.git和/或它包含根(或您的管理员帐户)所拥有的文件,您可以运行此为根(或使用sudo)

chown -R git newrepo.git 

之后,ls -l应该表明它是拥有git,而不是root。

如果这不是问题,我会再次检查您的本地计算机上的遥控器git remote -v,并确保您的~/.ssh/config文件中没有任何奇怪的东西。

+0

他们都拥有git。 螺丝它,我只是要完全重新安装gitolite,并翻拍我所有的回购(到我不再能推,被跟随别人的意见,在互联网上的其他地方)。它会比试图通过Git的特质和神秘的UNIX命令行和文件的工作* *再次更快,痛苦少。 谢谢,伙计们。 – MiloDC

1

仔细检查move/rename process with Gitolite

重命名回购也不是自动的。以下是您所做的事情(并且顺序非常重要):

  1. 转到服务器并在Unix命令行中重命名repo。
    不要忘记在目录名称上保留“.git”扩展名。
  2. 变化在conf/gitolite.conf文件在您gitolite管理员回购克隆的名称,并添加/提交/推。

OP MiloDC确认in the comments

我知道了现在的工作(通过重新安装Gitolite并通过设置过程再次去),我怀疑,登录作为管理员和影响重命名造成的问题。

+0

您是否彻底阅读了我的问题?这正是我所做的。 – MiloDC

+1

@MiloDC我同意,唯一的区别是你用来操作的帐户。 – VonC

+0

是啊,虽然我知道了现在的工作(通过重新安装Gitolite并通过设置过程再次去),我怀疑,作为管理员登录并实现重命名引起的问题。 – MiloDC