Skip to main content

フォークから作成されたプルリクエストのブランチへの変更をコミットする

プルリクエストの作者から権限を付与されていれば、リポジトリのフォークから作成されたプルリクエストのブランチにおける変更をコミットできます。

Platform navigation

プルリクエストのブランチが以下の条件を満たす場合にのみ、コミットを実行できます:

  • あなたがプッシュアクセス権限を持つリポジトリでオープンされ、かつそのリポジトリのフォークから作成されている
  • ユーザ所有のフォーク上にある
  • プルリクエストの作者から権限を付与されている
  • コミットを妨げるブランチ制限がない

プルリクエストを作成したユーザのみが、ユーザー所有のフォークにコミットをプッシュする権限を与えることができます。 詳しくは、「フォークから作成されたプルリクエストのブランチへの変更の許可」を参照してください。

注: リポジトリのフォークから GitHub.com を介して pull request ブランチにコミットすることもできます。これを行うには、リポジトリのフォークのコピー (またはフォーク) を作成し、pull request の変更元と同じ head ブランチに変更をコミットします。 一般的なガイドラインについては、「フォークからプルリクエストを作成する」を参照してください。

  1. GitHubで、プルリクエストのブランチを作成したフォーク (またはリポジトリのコピー) のメインページに移動します。

  2. ファイルの一覧の上にある [コード] をクリックします。

    リポジトリのランディング ページのファイル リストのスクリーンショット。 [コード] ボタンが濃いオレンジ色の枠線で囲まれています。

  3. リポジトリの URL をコピーします。

    • HTTPS を使ってリポジトリをクローンするには、[HTTPS] の下の をクリックします。

    • Organization の SSH 認証機関から発行された証明書などの SSH キーを使ってリポジトリをクローンするには、 [SSH] をクリックしてから、 をクリックします。

    • GitHub CLI を使ってリポジトリをクローンするには、 [GitHub CLI] をクリックしてから、 をクリックします。

      [コード] ドロップダウン メニューのスクリーンショット。 リポジトリの HTTPS URL の右側に、コピー アイコンが濃いオレンジ色の枠線で囲まれています。

  4. [ターミナル][ターミナル][Git Bash] を開きます。

ヒント: GitHub Desktop を使用してフォークを複製する場合は、「リポジトリをクローンする」を参照してください。

1. カレントワーキングディレクトリを、クローンしたディレクトリをダウンロードしたい場所に変更します。
cd open-source-projects
  1. git clone」と入力し、手順 3 でコピーした URL を貼り付けます。

    git clone https://github.com/USERNAME/FORK-OF-THE-REPOSITORY
    
  2. Enter キーを押します。 これで、ローカルにクローンが作成されます。

    $ git clone https://github.com/USERNAME/FORK-OF-THE-REPOSITORY
    > Cloning into `FORK-OF-THE-REPOSITORY`...
    > remote: Counting objects: 10, done.
    > remote: Compressing objects: 100% (8/8), done.
    > remove: Total 10 (delta 1), reused 10 (delta 1)
    > Unpacking objects: 100% (10/10), done.
    

    ヒント: エラー メッセージ "fatal: destination path 'REPOSITORY-NAME' already exists and is not an empty directory" は、現在の作業ディレクトリに、同じ名前のリポジトリが既にあることを意味します。 このエラーを解決するには、別のディレクトリにフォークをクローンする必要があります。

  3. 新しくクローンしたリポジトリに移動します。

    cd FORK-OF-THE-REPOSITORY
    
  4. 元の変更が行われた、プルリクエストの比較ブランチに切り替えます。 元のプルリクエストに移動すると、比較ブランチがプルリクエストの上部に表示されます。

    この例では、比較ブランチは test-branch です。

    git checkout TEST-BRANCH
    

    ヒント: プルリクエスト ブランチの詳細と例については、「pull request の作成」を参照してください。

  5. これで、このブランチに対して任意の操作を実行できます。 新しいコミットのプッシュ、ローカルでのテスト、他のブランチからのマージを行うことができます。 自由に修正しましょう。

  6. プルリクエストの head ブランチに変更をコミットした後、元のプルリクエストに直接、変更をプッシュできます。 この例で、head ブランチは test-branch です。

    $ git push origin test-branch
    > Counting objects: 32, done.
    > Delta compression using up to 8 threads.
    > Compressing objects: 100% (26/26), done.
    > Writing objects: 100% (29/29), 74.94 KiB | 0 bytes/s, done.
    > Total 29 (delta 8), reused 0 (delta 0)
    > To https://github.com/USERNAME/FORK-OF-THE-REPOSITORY.git
    > 12da2e9..250e946  TEST-BRANCH -> TEST-BRANCH
    

新しいコミットが GitHub.com の元の pull request に反映されます。

もっと読む