15

私は最近、Linux ボックスで git リポジトリをセットアップしようとしましたが、まったく結果が得られずに約 10 時間を無駄にしました。コンパイルなどの問題はありません。構成の問題です。2時間後、私はmercurialで必要なことをすべて実行しました:

  1. 公開リポジトリ
  2. ウェブ UI
  3. ユーザーごとの権限によるプッシュ/プル (Linux アカウントに関連付けられていない)

私が見ることができる git のすべては、github を使用してローカルで実行しているか、すべてがセットアップ済みであることを前提としています。適切なキーワードを探していないか、その件に関する情報がまったくないか、ほとんどないかのどちらかです。

私は git を試してみたいと思っていますが、それをセットアップするのは非常に落胆する経験です。誰かがこれらの用語で何か役立つことを指摘できますか?

ありがとう!

4

2 に答える 2

13

私は信じています (まだ試していませんが) gitosisは次の目的のために進むべき道だと思います:
更新: 2011 年、実際にgitoliteをデプロイしました

  • リポジトリのホスティングをgitより簡単かつ安全にします。これ
  • SSH キーを使用してユーザーを識別し、1 つのユーザー アカウントで複数のリポジトリを管理します。
    エンド ユーザーは、サーバー上でシェル アカウントを必要としません。エンド ユーザーは、任意のコマンドを実行できない 1 つの共有アカウントと通信します。

私が推奨するインストール プロセスは、サーバー上の gitolite の完全なインストールをコピーするために、クライアント ポストから行うものです。

(from-client 方式) クライアントからサーバーへのインストール

覚えておいてください: gitolite は認証 (SSH) ではなく承認を管理します: SSH なしで使用できますが、その自然な展開は SSH と強制コマンド メカニズムを介して行われます。(gitosis と同様ですが、より多くの機能を備えています)


gitosis の古い参考文献:

ここにステップバイステップのチュートリアルがあります。

そして、チュートリアルのアプリケーション: Gitosis — 複数の Git リポジトリのホストを管理可能にする(Mac の場合) またはgitosis を Ubuntu にインストールする

続いて:安全な Git セットアップにユーザーを追加する

以下で終了: Git サブプロジェクト(gitosis サーバーがこれらすべての異なる git リポジトリを管理しているため)


本当に軽い (cgi サーバー) パブリック Git リポジトリの場合、次のことができます。

  • git サーバーをセットアップします: git-daemon ; ポート 9418 でリッスンします。デフォルトでは、git ディレクトリのように見え、マジック ファイル git-daemon-export-ok を含むすべてのディレクトリへのアクセスを許可します。いくつかのディレクトリ パスを git-daemon 引数として渡すと、エクスポートがそれらのパスにさらに制限されます。
    git-daemon を inetd サービスとして実行することもできます。
  • httpでエクスポート 新しく作成されたベア git リポジトリを、Web サーバーによってエクスポートされるディレクトリに配置し、Web クライアントに必要な追加情報を提供するためにいくつかの調整を行います。

Apache サーバーで行う方法は次のとおりです。


2010 年の記事「Git リポジトリを共有する 8 つの方法」では、Git リポジトリへのアクセスを許可するすべての可能性について言及しています。

于 2009-03-06T21:31:02.520 に答える
1

あなたはただすることができます

git instaweb

lighttpdがインストールされている場合。ただし、これは Web GUI のみです。

于 2010-01-27T17:02:15.500 に答える