Skip to main content

GitHub Desktop でのブランチの同期

コミットは GitHub のプロジェクトにプッシュされるため、リモートリポジトリからプルすることにより、プロジェクトのローカルコピーを同期した状態に保つことができます。

Platform navigation

ブランチの同期について

最後に同期してから GitHub のブランチに追加されたコミットをプルすることにより、ローカルブランチをリモートリポジトリと同期できます。 別のデバイスからコミットする場合、または複数のユーザがプロジェクトに貢献する場合は、ローカルブランチを同期してブランチを更新し続ける必要があります。

ローカルブランチにプルすると、リポジトリのローカルコピーのみを更新します。 GitHub のブランチを更新するには、変更をプッシュする必要があります。 詳しくは、「GitHub Desktop から GitHub に変更をプッシュする」をご覧ください。

あるブランチから別のブランチへの変更を追加するには、ブランチをマージします。 同じリポジトリ内の別のブランチからブランチに変更を適用するには、他のブランチを GitHub Desktop のブランチにマージします。 ブランチからの変更を、同じリポジトリまたはネットワーク内の別のリポジトリにある別のブランチにマージするようにリクエストするには、GitHub Desktop でプルリクエストを作成します。 詳しくは、「プロジェクト ブランチに他のブランチをマージする」と「pull requests について」をご覧ください。

一部のワークフローでは、マージではなくリベースが必要または役立つ場合があります。 リベースすることで、コミットの順序を変更したり、編集したり、まとめて squash したりできます。 詳しくは、「Git リベースについて」と「プロジェクト ブランチを他のブランチにリベースする」をご覧ください。

リモートからローカルブランチにプルする

  1. GitHub Desktop で、 [現在のブランチ] ドロップダウンを使って、更新するローカル ブランチを選びます。

  2. リモート ブランチでのコミットを確認するには、 [元のものをフェッチ] をクリックします。

    リポジトリ バーのスクリーンショット。 [元のものをフェッチ] ボタンと、2 本の矢で円を形作っているアイコンがオレンジ色で囲まれています。

  3. リモート ブランチからコミットをプルするには、 Pull origin または Pull origin with rebase をクリックします。

    リポジトリ バーのスクリーンショット。 [元のプル] ボタンと、矢が下を向いているアイコンがオレンジ色で囲まれています。

  4. テキストエディタ、コマンドライン、または他のツールなどの好みの方法で、マージコンフリクトがあれば解決してください。 詳しくは、「マージ競合への対処」を参照してください。

プロジェクトブランチに他のブランチをマージする

  1. GitHub Desktop で、 [現在のブランチ] をクリックします。

    リポジトリ バーのスクリーンショット。 ドロップダウン メニューを示す下向き矢印が付いた [Current Branch] というボタンがオレンジ色の枠線で囲まれています。

  2. [ブランチを選択して <ブランチ> にマージする] をクリックします。

    [現在のブランチ] ドロップダウン ビューのスクリーンショット。 ブランチ一覧の下に [ブランチを選択して my-feature にマージする] というボタンがあり、オレンジ色の枠線で囲まれています。

  3. 現在のブランチにマージするブランチをクリックし、 [<ブランチ> を <ブランチ> にマージする] をクリックします。

    Note

    マージの競合がある場合、GitHub Desktop の [Merge <ブランチ名> into <ブランチ名>] ボタンの上に警告が表示されます。 全てのコンフリクトを解決するまではブランチをマージすることはできません。

  4. ローカルの変更をリモート リポジトリにプッシュするには、リポジトリ バーの [Push origin] (オリジンへプッシュ) をクリックします。

    リポジトリ バーのスクリーンショット。 [Push origin] (オリジンへプッシュ) というボタンがオレンジ色の枠線で強調表示されています。

プロジェクトブランチを他のブランチにリベースする

  1. メニュー バーで [ブランチ] を選び、 [現在のブランチのリベース] をクリックします。

    Mac のメニュー バーのスクリーンショット。 展開した [ブランチ] ドロップダウン メニューで [現在のブランチのリベース] というラベルのオプションにカーソルが置かれています。

    Windows の [GitHub Desktop] メニュー バーのスクリーンショット。 展開された [ブランチ] ドロップダウン メニューで、[現在のブランチのリベース] というラベルのオプションがオレンジ色で囲まれています。

  2. 現在のブランチにリベースするブランチをクリックして、 [リベース] をクリックします。

  3. リベースする場合、 [リベースを始める] をクリックします。

  4. テキストエディタ、コマンドライン、または他のツールなどの好みの方法で、マージコンフリクトがあれば解決してください。 詳しくは、「マージ競合への対処」を参照してください。

  5. ローカルの変更をプッシュするには、 Force push origin をクリックします。

    リポジトリ バーのスクリーンショット。 [元を強制的にプッシュ] ボタンと、上向き二重矢印のアイコンがオレンジ色で囲まれています。

別のブランチをプロジェクト ブランチにスカッシュしてマージする

  1. メニュー バーで [ブランチ] を選び、 [現在のブランチにスカッシュとマージ] をクリックします。

    Mac のメニュー バーのスクリーンショット。 展開された [ブランチ] ドロップダウン メニューで、[現在のブランチにスカッシュとマージ] というラベルのオプションの上にカーソルが置かれています。

    Windows の [GitHub Desktop] メニュー バーのスクリーンショット。 展開された [ブランチ] ドロップダウン メニューで、[現在のブランチにスカッシュしてマージ] というラベルのオプションがオレンジ色で囲まれています。

  2. [スカッシュとマージ] ウィンドウで、現在のブランチにマージするブランチをクリックし、 [スカッシュしてマージ] をクリックします。

    Note

    マージの競合がある場合、GitHub Desktop の [Squash and merge] ボタンの上に警告が表示されます。 全ての競合を解決するまで、ブランチをスカッシュしてマージすることはできません。

  3. ローカルの変更をリモート リポジトリにプッシュするには、リポジトリ バーの [Push origin] (オリジンへプッシュ) をクリックします。

    リポジトリ バーのスクリーンショット。 [Push origin] (オリジンへプッシュ) というボタンがオレンジ色の枠線で強調表示されています。

参考資料