18

私はいくつかのGitHubリポジトリを使用しています。これまで使用してきた手順は、元のリポジトリをフォークしてから、ブランチのクローンを作成することです。変更を加えた場合は、それらをリモートブランチにプッシュするだけです。

私の懸念は次のとおりです。プロジェクトでは、おそらく変更やコミットを行わないでしょう。以前と同じように、元のプロジェクトをフォークしてブランチのクローンを作成する必要がありますか、それとも元のプロジェクトのクローンを作成する必要がありますか?そして、それらのプロジェクトにカスタマイズが必要な多数のファイルが含まれている場合はどうなりますか(したがって、私のローカルプロジェクトは元のプロジェクトとは異なります)。

4

2 に答える 2

23

それは本当に重要ではありません。

変更を加えないと思われる場合は、元のリポジトリを安全に直接複製できます。これには、を介してローカルクローンを直接更新できるという利点がありますgit pull。変更を加えたいことに気づいたら、githubでフォークして、追加のリモートとしてフォークを追加できます。

反対に、リモートに変更を加えると思われる場合は、フォークすることができます。自分が間違っていて、変更を加える必要がないことに気づいたら、元のリポジトリをリモートとして追加し、フォークを削除します。

私自身は常にフォークと元のフォークの両方をリモートとして追加することを好みます。したがって、(たとえば)git pull original masterを介してローカルクローンを更新し、その後、git push originoriginここではプライベートフォークです。名前は実際にはありません)で更新できます。問題も)。フォークが必要ないか、もう必要ない場合は、それを取り除きます。(もう一度)必要な場合は、(再?)作成します。

補足として:ローカルクローンも完全なリポジトリであり、変更をそこに保持するのに十分であれば、変更を加えるためにgithubにフォークは必要ありません。

于 2012-07-27T07:55:12.620 に答える
11

コードに変更を加える予定がない場合は、クローンを作成しますが、フォークしないでください。フォークは、コードに対して行うコミットをホストすることを目的としていますが、プロジェクトのコンテンツと履歴をコピーするには、クローン作成はまったく問題ありません。

後で気が変わって、クローンリポジトリに作成したコミットを公開したい場合は、いつでもコミットを元のクローンからフォークされたリポジトリにプッシュできます。フォークのURLをリポジトリのリモートに追加するだけです。

于 2012-07-27T07:56:31.970 に答える