この記事では、特定のコミットをリモートブランチにプッシュすることに関連するいくつかの一般的なgit質問に対処します。 さまざまなgitコマンドと戦略を使用してこれを達成する方法を探ります。
単一の特定のコミットをリモートブランチにプッシュするには、特定のコミットハッシュを使用してgit push
コマンドを使用する必要があります。 リモートリポジトリのa1b2c3d4
remote-branch
ブランチにコミットをプッシュしたいとしましょう。 単純なgit push origin remote-branch
で単一のコミットを直接指定することはできません。代わりに、ローカルリポジトリでその特定のコミットを指す新しいRefを作成し、そのrefをリモートにプッシュする必要があります。 これは、次の手順を使用して行われます。
git log
a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6
を使用して、プッシュしたいコミットのSHA-1ハッシュを識別します。 これは通常、40文字の16進数文字列(例:
<code class="bash">git branch temp-branch a1b2c3d4</code>
)とブランチ名(この例では)を指定します:origin
temp-branch
<code class="bash">git push origin temp-branch</code>
(オプション)一時的なブランチを削除します。コミットがプッシュされます。 リモートブランチには、その単一のコミットのみが含まれます。
、<code class="bash">git branch -d temp-branch git push origin :temp-branch</code>、および
リモートブランチに単一のコミットのみを選択的にプッシュするにはどうすればよいですか?a1b2c3d4
origin
上記のメソッド - 一時的なブランチを作成してプッシュする方法は、単一のコミットのみを選択的にプッシュする最も信頼できる方法です。 リモートブランチでチェリーピックやその他の方法を直接使用しようとすると、特にリモートブランチが地元のブランチから大幅に分岐した場合、矛盾が矛盾し、競合をマージすることができます。 一時的なブランチアプローチは、支店の履歴の残りに影響を与えることなく、単一のコミットを追加するためのクリーンで制御された方法を提供します。
最初のセクションで概説されているコマンドシーケンスが最も適切です。 gitは、ソースに対して単一のコミットハッシュではなく、ブランチ参照を期待するため、git push origin <branch>:<commit>
を使用することは確実に機能しません。 一時的なブランチは、その必要な参照として機能し、プッシュ操作の単一のコミットをきれいに分離します。 最初のセクションで説明した方法は、現在チェックアウトされているブランチに関係なく機能します。
git push
a1b2c3d4
different-branch
一時的なブランチを作成します。リポジトリですが、名前の下
以上が指定されたコミットをプッシュする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。