Skip to main content

フォークについて

フォークはユーザが管理するリポジトリのコピーです。 フォークを使えば、オリジナルのリポジトリに影響を与えることなくプロジェクトへの変更を行えます。 オリジナルのリポジトリから更新をフェッチしたり、プルリクエストでオリジナルのリポジトリに変更をサブミットしたりできます。

リポジトリのフォークはリポジトリのコピーと似ていますが、次の 2 つの大きな違いがあります。

  • pull request を使って、ユーザーが所有するフォークからの変更を、GitHub 内にあるオリジナルのリポジトリ (上流 のリポジトリとも呼ばれます) に提案できます。

  • 上流のリポジトリと自分のフォークを同期させることで、上流のリポジトリからの変更を自分のローカルフォークへ持ち込めます。

    プライベート リポジトリにアクセスでき、その所有者がフォークを許可している場合は、そのリポジトリを自分の個人アカウントか、リポジトリの作成権限を持っている GitHub Team 上の組織にフォークできます。 プライベート リポジトリは、GitHub Free を使っている組織にはフォークできません。 詳細については、「GitHub の製品」を参照してください。

enterprise with managed users のメンバーの場合、フォークできるリポジトリに対して、さらに制限があります。 Managed user accounts は、Enterprise の外部からリポジトリをフォークしたり、内部のリポジトリをフォークしたりすることはできません。 Managed user accounts は、Enterprise 内の Organization が所有するプライベート リポジトリを、Enterprise が所有する他の Organization にフォークしたり、managed user account が所有するフォークとしてフォークしたりできます。 詳しい情報については、GitHub Enterprise Cloud ドキュメントの「Enterprise Managed Users について」を参照してください。

You can use GitHub Desktop to fork a repository. For more information, see "Cloning and forking repositories from GitHub Desktop."

フォークを削除しても、オリジナルの上流のリポジトリは削除されません。 オリジナルに影響を与えることなく、コラボレータの追加、ファイル名の変更、GitHub Pages の生成など、自分のフォークに必要な変更を加えることができます。 削除されたフォーク リポジトリを復元することはできません。 詳しい情報については、「削除したリポジトリの復元」を参照してください。

オープンソースプロジェクトでは、フォークを使用して、上流のリポジトリに提供される前にアイデアや変更をイテレーションすることがよくあります。 ユーザーが所有するフォークに変更を加え、作業を上流リポジトリと比較する pull request をオープンすると、上流リポジトリにプッシュ アクセスできるどのユーザーにも、変更を pull request ブランチにプッシュする権限 (ブランチの削除を含む) を付与することができます。 これにより、リポジトリメンテナがマージする前に、ユーザが所有するフォークからプルリクエストブランチに対してローカルでコミットを実行したり、テストを実行したりすることができるようになり、コラボレーションがスピードアップします。 Organization が所有するフォークにプッシュ権限を与えることはできません。

プライベートフォークは、上流もしくは親リポジトリの権限構造を継承します。 これは、プライベートリポジトリのオーナーがコードに対するコントロールを管理するための役に立ちます。 たとえば、上流リポジトリがプライベートで読み取り/書き込みアクセスをあるTeamに与えているなら、そのチームはプライベートの上流リポジトリのすべてのフォークに読み取り/書き込みアクセスを持つことになります。 (個人のアクセス許可ではなく) チームのアクセス許可のみが、プライベート フォークによって継承されます。

既存のリポジトリのコンテンツから新しいリポジトリを作成したいものの、その後は変更を上流にマージしたくない場合は、リポジトリを複製するか、リポジトリがテンプレートである場合は、リポジトリをテンプレートとして使うことができます。 詳しい情報については、「リポジトリを複製する」と「テンプレートからリポジトリを作成する」を参照します。

参考資料