GitHub でのフォークとクローン作成の違い

John Wachira 2024年2月15日
GitHub でのフォークとクローン作成の違い

この記事では、GitHub でのフォークとクローン作成の違いについて概説します。 GitHub の常連ユーザーであれば、おそらくこれらの用語に出くわしたことがあるでしょう。

初心者にとって、GitHub でのフォークとクローン作成はかなり混乱する可能性があります。 パブリック GitHub リポジトリとやり取りする場合は、両方の条件が適用されます。

両者がどのように異なるかを議論しましょう。

GitHub でのフォークとクローン作成の違い

各用語がどのように機能し、いつ適用する必要があるかを定義して説明します。 フォークから始めましょう。

GitHub でのフォーク

GitHub でフォークするには、自分の個人的な GitHub アカウントにパブリック リポジトリのコピーを作成する必要があります。 GitHub でリポジトリをフォークする理由

テストしたいプロジェクトが公開されている GitHub リポジトリを見つけたとしましょう。 ローカル マシンにコードのコピーが必要です。

コードにバグを見つけて修正できた場合、所有者が許可しない限り、変更をパブリック リポジトリにプッシュすることはできません。

ここでフォークが活躍します。 フォークを作成したら、フォークされたリポジトリのローカル コピーを作成して、元のリポジトリに影響を与えずに変更を加えることができます。

そこから、元のリポジトリへのプル リクエストを作成できます。所有者が変更が理想的であると判断した場合、所有者はプル リクエストを受け入れることができ、コードは元のリポジトリに組み込まれます。

これは、フォークのさまざまな使用例の 1つです。 フォークのもう 1つの一般的な使用例は、他の開発者と共同でプロジェクトに取り組んでいるときです。

あなたの会社が GitHub でリモート リポジトリをホストすることを決定したとします。 その場合、複数の開発者が同じリポジトリにプッシュするよりも、リポジトリのフォークを作成し、フォークにプッシュしてプル リクエストを作成する方が簡単です。

元のリポジトリに変更が加えられるたびに、ローカルのリポジトリとフォークを元のコピーと同期できます。

GitHub でどのようにフォークしますか?

パブリック GitHub リポジトリをフォークするには、リポジトリに移動し、下図のようにフォークアイコンをタップします。

github の fork

フォークの名前と説明を変更できる新しいタブがロードされます。 すべてのブランチをフォークする場合は、マスター ブランチのみをコピーするボックスのチェックを外し、フォークを作成をクリックします。

次に、フォークしたリポジトリのローカル コピーを作成して、次のセクションに進みます。

GitHub でのクローン作成

すべての開発はローカルで行われることがわかっています。 マシン上にコードのローカル コピーがなければ、プロジェクトで作業することはできません。

ここで、クローニングの出番です。 クローンを作成すると、ローカル マシンにリモート リポジトリのローカル コピーが作成されます。

クローンを作成したら、コードの微調整を開始して、元のリポジトリに貢献できます。 リポジトリをどのようにクローンしますか?

この例では、フォークを作成した後、中断したところから再開します。 フォークのローカル コピーを作成する方法を見てきました。 それを複製する必要があります。

フォークを複製するには、まずフォークの URL をコピーします。 以下に示すように、URL はコードタブの下にあります。

repo url

URL をコピーして Git Bash を起動します。 以下に示すように、リポジトリのクローンを作成するフォルダーを作成します。

$ mkdir myproject

以下のようにフォルダを開きます。

$ cd myproject

以下に示すように、git clone コマンドを使用してリポジトリのクローンを作成します。

$ git clone https://github.com/User/Repository.git

結果:

レポの複製

リポジトリのサイズとインターネット接続によっては、クローン作成に時間がかかる場合があります。

両者の違いを表にまとめてみました。

フォーク クローン
コンセプトです それはプロセスです
コマンドの使用を伴わない git clone コマンドの使用を伴う
GitHub アカウントでフォークします Git を使用してクローンを作成します
プルリクエストを介して、フォークに加えられた変更を元のリポジトリとマージできます あなたが所有者または承認された寄稿者である場合にのみ、複製されたリポジトリに加えられた変更を元のリポジトリとマージできます

結論として、GitHub でホストされているパブリック リポジトリを操作するときに、フォークとクローン プロセスの概念に出くわすことになります。 この 2つは動作が異なり、ユース ケースも異なります。

著者: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

関連記事 - Git Fork

関連記事 - Git Clone