すでにここで非常に良い答えを追加しています。
「サーバ」という概念は、gitに関しては混乱します。私たちは、私たちの技術的な生活の中で、これがサーバーだと思っています。私たちはこのアイデアを快適に(正しくまたは間違って)見つけます。
分散システムであるため、git-ballのクローンされたコピーはすべて技術的にリポジトリです。
それはあなたのリポジトリのコントロールの中心的なポイントを持つことはまだ非常に良いアイデアだと言われています。
Bitbucketまたはgithub、またはどこかに座っている自分のボックスさえも、「マスター」リポジトリとして機能することができます。
gitのプロフェッショナルな使い方は、一般的には「master」レポで構成されています(bitbucketの場合はpull requestsのみ書き込み可能です)。チームメンバーはリポジトリをフォークし、作業を行い、自身のリポジトリにコミットした後、 'master'レポにプルリクエストを発行します。次に、ピアコードレビューが実行され、正常なプルリクエストがメインリポジトリにマージされます。
これは、多くの優れた実践を促進し、someones elsesサービスでバックアップされたクリーンなリポジトリがあることを意味します。
(私の組織では)100以上のプロジェクトがこのように多くの言語で実行されており、非常にうまく機能しています。
これを基にして、いくつかのワークフローがあります。見てくださいhere合理的に良い説明。
これはサーバー上のgitで何をしたいかによって決まります... – deceze
@deceze私は、最も単純な変種の3つのクライアントと1つのサーバーを考えます。サーバー上でgit repoが保存されます。 –
ここにいくつかの便利な情報があります:https://git-scm.com/book/en/v1/Git-on-the-Server – xbonez