5

小さなチームのために、gitolite を使用して git サーバーをセットアップしました。私たちの 1 人がリポジトリを作成し、スマート http を使用して最初のコミットをプッシュしました。

http://ourhost/project.git

次に、ssh ie を使用してプロジェクトのクローンを作成しました

git clone git@ourhost:project.git

Git でやらせてもらい、プロジェクト フォルダーを作成しましたが、リポジトリがであると報告されました。さらに、私が行った git pull により、「リモート ref マスターが見つかりませんでした」というエラーが表示されました。その後走った時

git remote -v show origin 

HEAD ブランチが表示されました: (unknown)。サーバー (gitlab を実行) をチェックしたところ、マスター ブランチとすべてのコードが表示されていたので、明らかにそこにありました。

最後に、smart http と lo を使用してクローンを作成したところ、すべてが機能し、作業を続けることができました。

しかし、これはなぜですか?それぞれがプッシュ/プルにどの方法を使用するかが問題になるのはなぜですか? Gitlab では、リポジトリの代替として 2 つの URL (ssh またはスマート http 用) も表示されるため、動作することが期待されるようです...)

それとも私は何かを逃していますか...?

4

1 に答える 1

3

GitLab V4 と Gitolite では、依然として ssh が優先されるアクセス方法です。
https アクセスは、Gitolite を完全にバイパスする可能性があります。

GitLab V5 では Gitolite を使用しなくなったため(gitlab-shell代わりに使用するようになりました)、ssh と https の両方のアクセスをアクセス権管理により一貫して使用できます。

于 2013-04-11T10:58:35.053 に答える