GitHubでのForkワークフロー
直接書き込み権限のないプロジェクトに貢献するための「ForkしてPull Requestを送る」モデルの使い方を理解します。
「GitHubでのForkワークフロー」はCoddyKit上の無料Git & GitHub Professional Workflowレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはGit & GitHub Professional Workflow学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Git & GitHub Professional Workflowコースには全4レッスンが含まれています。
GitHubのフォークとは
オープンソースプロジェクトに貢献したいものの、そのコードを直接変更する権限がない場合を考えてみましょう。そこで役立つのがフォークです。
フォークとは、他のユーザーのGitHubリポジトリを個人用にコピーしたものです。自分のGitHubアカウントの下に作成されるため、元のプロジェクトに影響を与えずに自由に試したり変更したりできます。
フォークを使う理由
リポジトリをフォークする主な理由は、元のコードベースへの直接の書き込み権限がない場合に、プロジェクトへの変更を提案することです。
- 安全な実験:元のプロジェクトを壊す心配なく、自分のコピーで作業できます。
- 貢献への道筋:公開プロジェクトに機能や修正を提案する標準的な方法です。
- 個人プロジェクト:関連する自分のプロジェクトの出発点としてフォークを利用できます。
GitHubでフォークする方法
GitHubでリポジトリをフォークする手順はとても簡単です。
- フォークしたい元のリポジトリに移動します。
- 通常は右上にある「Fork」ボタンを探します。
- 「Fork」ボタンをクリックします。GitHubによって、そのリポジトリのコピーが自分のアカウントの下に作成されます。
これでgithub.com/YOUR_USERNAME/ORIGINAL_REPO_NAMEを利用できるようになります。
フォークをローカルにクローンする
GitHubでリポジトリをフォークしたら、そのコピーをローカルマシンに取得して作業を始めます。
git cloneコマンドを使います。ただし、元のリポジトリのURLではなく、自分のフォークのURLをクローンするようにしてください。
git clone https://github.com/YOUR_USERNAME/your-forked-repo.git変更を作成してコミットする
フォークをローカルにクローンできたら、他のGitプロジェクトと同じように変更を加えられます。機能追加や修正のために、新しいブランチを作成するのがおすすめです。
git checkout -b my-new-feature
# Edit files, add new code...
git add .
git commit -m "feat: added my new feature"変更をフォークにプッシュする
ローカルで変更をコミットしたら、GitHub上のリモートフォークにプッシュする必要があります。これにより、リポジトリの個人用コピーが更新されます。
originリモートは通常、自分のフォークを指します。
git push origin my-new-featureフォークを上流と同期する
フォークで作業している間に、元のリポジトリ(通常「upstream」と呼ばれます)に新しい更新が追加されることがあります。フォークを最新の状態に保つには、同期する必要があります。
まず、元のリポジトリをupstreamという名前の新しいリモートとして追加します。次に、その変更をフェッチしてマージします。
git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPO.git
git fetch upstream
git checkout main
git merge upstream/mainプルリクエストを作成する
変更が完了してフォークにプッシュできたら、元のプロジェクトに変更を提案する準備が整います。これはプルリクエスト(PR)で行います。
GitHubで自分のフォークに移動します。新しいブランチからPRを作成するよう案内するバナーが表示されることがあります。案内に従って、自分のブランチと元のリポジトリのmainブランチを比較し、提案を送信します。
フォークワークフローのループ
一般的なフォークワークフローをまとめると、次のようになります。
- Fork:GitHub上に個人用のコピーを作成します。
- Clone:フォークをローカルマシンに取得します。
- Develop:新しいブランチで変更を加えます。
- Push:変更をリモートフォークに送信します。
- Sync:フォークを元のプロジェクトと同期します。
- Pull Request:元のプロジェクトに変更を提案します。
クイックチェック:フォークする理由
フォークワークフローを使う理由と方法を理解することは、オープンソースで協力するうえで欠かせません。
おさらい:フォークの力
このレッスンでは、GitHubのフォークワークフローについて学びました。フォークによってリポジトリの個人用コピーが作成され、直接の書き込み権限がなくてもプロジェクトに貢献できることを理解できたはずです。
フォーク、クローン、変更の作成、フォークへのプッシュ、上流リポジトリとの同期、そして貢献を提案するプルリクエストの作成方法を学びました。このワークフローは、GitHubで共同開発を行うための基本です。
よくある質問
「GitHubでのForkワークフロー」レッスンは無料ですか?
はい。「GitHubでのForkワークフロー」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Git & GitHub Professional Workflowコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Git & GitHub Professional Workflowコースには全4レッスンが含まれています。
「GitHubでのForkワークフロー」で何を学びますか?
直接書き込み権限のないプロジェクトに貢献するための「ForkしてPull Requestを送る」モデルの使い方を理解します。 ブラウザで直接実行するハンズオンコードでGit & GitHub Professional Workflowを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Git & GitHub Professional Workflowを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのGit & GitHub Professional Workflowは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「GitHubでのForkワークフロー」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このGit & GitHub Professional Workflowレッスンでコードを書いて実行できますか?
はい。すべてのGit & GitHub Professional Workflowレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Pull Requestの作成とレビュー
- GitHubでのForkワークフロー
- コードレビューと承認
- Draft PR とプルリクエストテンプレート