0

最近、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 Pushing to git@my_server:free_monkey.git fatal:リモート エンドが予期せず電話を切った

私の gitosis.conf ファイルは次のようになります。

[gitosis]
loglevel = DEBUG

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

これをデバッグするために必要な情報が不足している場合はお知らせください。ありがとうございました!

私に関係するもう1つのこと:

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

それが問題なのでしょうか?もしそうなら、どうすれば修正できますか?

4

2 に答える 2

0

わかりましたので、「不明なコマンドが拒否されました」というエラーはニシンだったようです。Gitosis では、セキュリティ上の理由から、git プッシュ/プル プロセス中に実際に送信されるコマンドのみが許可されているため、「git」は既知のコマンドではありませんでした。

同じエラーが引き続き発生しましたが、別のフォーラムでauthorized_keysファイルへの参照に出くわしました-重複したキーがあると、authorized_keysファイルが完全に破壊されます. 案の定、それは私の問題でした。これが誰かを助けることを願っています。

これを実際に診断するには、次の手順に従います。

  1. gitリポジトリへのアクセスに使用しているユーザーのauthorized_keysファイルをcatします(私の場合はgit@my_serverだったので、/home/git/.ssh/authorized_keysを調べました)。各公開鍵を一度だけ持っていることを確認してください。
  2. 2 番目の問題に遭遇しました。それは、TortoiseGit と Pageant で複数の ppk を使用しようとしたことです。 Pageant は TortoiseGit のキー変更要求を無視しているようです。タスクバー (帽子をかぶっているコンピュータ) の Pageant を右クリックしてキーを表示し、使用する公開キーと一致しないすべてのキーを削除します (すべての可能性があります)。

TortoiseGit 経由でアクセスできる SSH 経由で利用可能なサーバーで gitosis を実行しています。

于 2009-11-09T02:27:37.243 に答える
0

You probably made a typo on the first time or something. Try removing the origin and re-adding it:

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

Then try pushing again. It's worth a try.

于 2009-11-08T19:29:56.133 に答える