は、SSH parts about gitoliteを確認:あなたはssh
を通じてserver.com
に接続することができるという事実は、唯一の意味:
- をあなたのSSHキーはキーはありませんがある」gitoliteに関連していないことを
[email protected]~/.ssh/authorized_keys
- に登録されています「
command=
」オプションは、「受信ユーザーが何を求めているかに関係なく、強制的にこのコマンドを実行する」という意味です)。
あなたは対話型セッションに参加していますので、好きなコマンドを実行することができます。私は、サードパーティのチュートリアルについては全く好きではない何
それはgitのユーザーとssh root以外のユーザー
ため同じ名前を使用しようとすることをあなたは別々に維持する必要がありますされています。
- アカウントないroot以外のユーザー(、トンへの管理者権限を持つgitoliteにリンクされますちょうどSSHキー、
server.com
、なしのsshで
git
(ログを直接に:2つの使用モードの混同を避けるため、正確に、ないgitolite
'をgit
' をする必要があり、彼gitolite-admin
レポ) - ホスティングアカウント、ここでは):gitコマンドを実行するためにインタラクティブなセッションが必要です(サーバー上のgitoliteリポジトリを複製して
gitolite/src/gl-system-install
を実行するなど) ssh [email protected]
~/.ssh/id_rsa(.pub)
publ
「gitolite」真アカウントではありません:gitoliteのものであること、gitolite-admin
レポのクローンを作成するためにあなたを承認し、レポ再び
がいることをプッシュバックし、ICおよび秘密鍵、、server.com
でコマンドを実行する権限を与えられた名前だけが 'git
'(実際の "ホスティングアカウント"、 "gitサービスとreposのホスティング"のように)
他のすべてのgitユーザーはserver.com
のgitコマンドをgit
として実行します。
そして、その特定のユーザ(gitolite
)は、「利用者の権利をクローニングすることを許可し、変更し、バックgitolite-admin
レポプッシュするために、gitoliteインストール時に権限を設定して、forced-command mechanismを通じて認証層をgitoliteにリンクされます。同じ名前を持つ2つの名前にしようと
:
(彼らはgitolite-admin
一つである特定のgitリポジトリにアクセスすることができませんそれはあなたが追加する他のすべてのSSH Gitのユーザーに比べてその唯一の特殊性です)トラブルを求めているだけです。
私は、公開鍵/秘密鍵のデフォルトの命名規則を使用して好きではないので、私は意図したユーザーの名前とそれらのキーを定義し、クライアントに好む:
~/.ssh/gitolite.pub
~/.ssh/gitolite
その後、私は設定を定義しますファイル:~/.ssh/config
その中で:
host gitolite
user git
hostname server.com
identityfile ~/.ssh/gitolite
(ここでは、ユーザ注意:常にgit
)を
その後、私は私のgitolite-amin
レポのクローンを作成することができます
後世のために
git clone gitolite:gitolite-admin
# modify locally
# git add -A ; git commit -m "my modifs"
git push origin master
私が使用しているサーバーには、鍵ペアの認証でログオンしているユーザーがいないため、使用している鍵は誰の〜/ .ssh/authorized_keysにも追加されていません。 gitoliteのようにサーバに追加したユーザーは〜/ .ssh/authorized_keysを持っています。そのファイルに私の公開鍵、私のgitoliteユーザ名(steve)があります。コマンドセクション。さらに、gitoliteユーザーを使用して私のサーバーに接続することは、対話型セッションではありません。それは、どのリポジトリが利用可能であるかを私に伝え、すぐに私をログアウトさせます。 – steve
@steve:うまく見えます。あなたはyurクライアント側で〜/ .ssh/configファイルを試してみることができますか? 'git clone gitolite:gitolite-admin'を試してみませんか? – VonC
OKを(ちょうど私がまだアカウントとして 'gitolite'を考慮することが不安を見つけるにもかかわらず、ユーザーgitolite''を使用してユーザーのgitを置き換える) - ここに私の〜/ .ssh/configに ホストserver.com \tユーザーgitolite から行をです\tホスト名server.com \t PreferredAuthentications publickey \t IdentityFile "C:¥Users¥user name¥.ssh¥id_rsa" < - このキーは、別の名前を持っていても、サーバー上の公開キーに対応します。 'git clone gitolite:gitolite-admin'の意味を正確には分かりませんが、私はそれを実行しました。ホストは存在せず、接続を開くことができません。 それから、上記と同じコマンドを実行しましたが、私はまだ同じエラーが発生しています。 – steve