代码之家  ›  专栏  ›  技术社区  ›  Matt DeKrey Kiran

cygwin/git/gitosis无法推送新存储库

  •  0
  • Matt DeKrey Kiran  · 技术社区  · 15 年前

    我最近在我的WindowsServer2003设备上安装了cygwin、git和gitosis,现在遇到了麻烦。我已经遵循了我在信中找到的每一个教程,并确认了当我推Gitosi管理存储库时,我的Git帐户的授权密钥表正在更新。然而,当涉及到创建一个新的存储库时,我似乎陷入了困境。

    我看过许多教程,推荐在git bash和windows命令行中使用以下代码(显然repo名称会发生更改):

    mkdir free_monkey
    cd free_monkey
    git init
    touch README
    git add .
    git commit -m "Added blank readme"
    git remote add origin git@my_server:free_monkey.git
    git push origin master
    

    当我执行最后一行时(不管我发送的是什么),它会说“远程端意外挂断了”: $git push-v原始主机:refs/heads/master 推到git@my_server:free_monkey.git 致命:远程端意外挂断

    我的gitosis.conf文件如下:

    [gitosis]
    loglevel = DEBUG
    
    [group gitosis-admin]
    writable = gitosis-admin free_monkey.git free_monkey
    members = git@my_server @all
    

    请告诉我,如果我缺少任何信息,你需要帮助我调试这个。谢谢您!

    还有一件事与我有关:

    $ ssh git@my_server git 
    DEBUG:gitosis.serve.main:Got command 'git' 
    ERROR:gitosis.serve.main:Unknown command denied 
    

    这可能是问题所在吗?如果是的话,我该怎么解决?

    2 回复  |  直到 14 年前
        1
  •  0
  •   Jorge Israel Peña    15 年前

    你可能是第一次做错字什么的。尝试删除原点并重新添加:

    git rm origin
    git remote add origin git@my_server:free_monkey.git
    

    然后再按一次。值得一试。

        2
  •  0
  •   Matt DeKrey Kiran    14 年前

    好吧,所以,看起来“未知命令被拒绝”的错误是一个误会。由于安全原因,Gitosi只允许在Git推/拉过程中实际发送的命令,因此“Git”不是已知的命令。

    我继续收到同样的错误,但在另一个论坛中偶然发现了一个对授权密钥文件的引用。- 拥有重复的密钥会完全破坏授权的\密钥文件 . 当然,那是我的问题。希望这能帮助别人。

    要真正诊断此问题,请执行以下步骤:

    1. 为您用来访问Git存储库的用户创建授权的_密钥文件(我的是git@my_服务器,所以我在/home/git/.ssh/authorized_密钥中查找)。确保每个公钥只有一次。
    2. 我遇到了第二个问题,那就是我试图用多个ppk与托托利塞吉特和选美。 选美似乎忽略了托托利塞吉特的换钥匙请求。 ;右键单击任务栏中的寻呼机(戴帽子的计算机)并查看密钥,然后删除所有与要使用的公钥不匹配的密钥(可能是所有密钥)。

    现在我的服务器上运行的Gitosi可以通过ssh访问,可以通过TortoiseGit访问。