私はいくつかのGITビデオを見て、多くのWebサイトを読んでいます。これまでのところ、GITは私のグループにとって優れたソース管理ソリューションであるように思われます。しかし、私には1つの質問/懸念があります。さまざまなコードプロジェクトがあり、一度に作業する人はごくわずかです。私たち一人一人が自分のマシンにコードベース全体を持っているとしたら、それは混乱するでしょう。ちなみに、単一のマシンには、コードベース全体と履歴を収容するためのストレージがない可能性があります。各開発者が自分のマシンで作業しているコードのみを持つようにGITを設定することは可能ですか?プロジェクトごとにブランチを作成して、開発者が自分のマシンにブランチを作成することをオプトインまたはオプトアウトできる可能性があると考えていました。それは可能ですか?
5 に答える
そのようなことは、分散型バージョン管理システムの存在意義全体を打ち砕くものです。どれだけ大きなプロジェクトが問題なく git に「収まるか」に驚かれることでしょう。Linux カーネルでそれができるなら、おそらくあなたもできるでしょう。
プロジェクトがかなり直交している場合は、それぞれを独自のリポジトリに入れることができます。
7 年間の Linux 履歴のレポは、デフォルト設定で ~650MB です。サブプロジェクトごとにブランチを作成するのではなく、それぞれのリポジトリ全体を作成するだけです。すべてのサブプロジェクトをパッケージとしてまとめて収集する必要がある場合は、それらすべてをブランチとして含むリポジトリを作成し、それらをそのリポジトリ内の単一のパッケージにマージできます。
多数の異なるコード プロジェクトがあり、一度にそれらに取り組む人はごくわずかです。私たち一人一人が自分のマシンにコード ベース全体を持っていたら、大変なことになります。
プロジェクトごとにリポジトリを作成します(プロジェクトがスタンドアロンアプリケーションを意味すると仮定します)。開発者は、現在取り組んでいるプロジェクトのソース コードのみを必要とします。
第二に、GIT は非常に優れた圧縮を実現します。現在、Linux の事実上のソース管理として使用されています (これは、私が最後に聞いたコードの約 1000 万行です)。それは彼らのために働きます、チャンスはあなたのために働くでしょう。
各プロジェクトが人々のグループに属しており、グループがそれほど重複していないと仮定すると、各コード プロジェクトを個別の git リポジトリに入れてみませんか? そうすれば、開発者は必要なリポジトリのみを複製できます。
ただし、一般に、分散リポジトリは集中リポジトリよりも多くのスペースを使用することに注意してください。
可能ですが、すでに提案されているように、複数のブランチ(主に脳内)によってさらに混乱が生じると思います。別のリポジトリが必要です。