繁体   English   中英

Cygwin / Git / Gitosis无法推送新存储库

[英]Cygwin/Git/Gitosis unable to push new repository

我最近在Windows Server 2003机器上设置了cygwin,git和gitosis,遇到了麻烦。 我几乎按照我能找到的所有教程进行操作,并确认当我推送gitosis-admin存储库时,我的git帐户的authorized_keys表正在更新。 但是,在创建新存储库时,我似乎陷入了困境。

我看过许多推荐使用以下代码的教程(很明显,仓库名称已更改),它们在git bash和Windows命令行中都尝试过:

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 origin master: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 

那可能是问题吗? 如果是这样,我该如何解决?

您可能是第一次打错字。 尝试删除原点并重新添加它:

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

然后尝试再次推动。 值得一试。

好的,因此,似乎“未知命令被拒绝”错误是一个红色鲱鱼。 Gitosis只允许出于安全原因在git push / pull过程中实际发送的命令,因此“ git”不是已知命令。

我继续收到相同的错误,但是在另一个论坛中偶然发现了对authenticated_keys文件的引用- 重复的密钥完全破坏了authorized_keys文件 果然,那是我的问题。 希望这可以帮助某人。

要真正诊断出此问题,请按照下列步骤操作:

  1. 为您用来访问git存储库的用户分配您的authorized_keys文件(我的名字是git @ my_server,所以我查看了/home/git/.ssh/authorized_keys)。 确保每个公共密钥只有一次。
  2. 我遇到了第二个问题,那就是我试图将多个ppk与TortoiseGit和Pageant一起使用。 Pageant似乎无视TortoiseGit更改密钥的请求 右键单击任务栏中的Pageant(戴着帽子的计算机),然后单击View Keys,然后删除所有与您要使用的公共密钥都不匹配的密钥(可能全部是这些密钥)。

现在,我可以通过TortoiseGit通过SSH在服务器上运行gitosis。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM