>本文解決了與將特定提交推向遠程分支有關的幾個常見的git問題。 我們將使用各種git命令和策略來探討如何實現此目標。
>>將單個特定的提交推向遠程分支,需要使用特定的提交hash使用git push
推向遙控存儲庫上的分支。 您無法直接使用簡單的a1b2c3d4
指定單個提交。取而代之的是,您需要創建一個新的Ref指向本地存儲庫上的特定提交,然後將REF推到遙控器上。 這是使用以下步驟完成的:remote-branch
git push origin remote-branch
git log
a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6
創建一個臨時分支(或使用現有的分支(如果適用)指向您所需的commit。例如:
<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
remote-branch
>上述方法 - 創建臨時分支並推動它 - 是最可靠的方法,是最可靠的方式,僅選擇性地推出一個提交。 嘗試直接在遠程分支上使用櫻桃挑選或其他方法可能導致不一致和合併衝突,尤其是如果遠程分支與您的本地分支機構顯著分歧。 臨時分支方法提供了一種干淨而受控的方法來添加單個提交而不影響其餘分支歷史記錄。
第一部分中概述的命令序列是最合適的。 使用git push origin <branch>:<commit>
無法可靠地工作,因為GIT期望源有分支參考,而不是單個提交哈希。 臨時分支充當必要的參考,乾淨地隔離了推動操作的單個提交。
推向名為git push
>的遠程分支,您將使用:a1b2c3d4
different-branch
git branch temp-branch a1b2c3d4
git push origin temp-branch:different-branch
git branch -d temp-branch
(可選)臨時分支:到遠程存儲庫,但以名稱git push origin :temp-branch
。這有效地將特定的提交置於遙控器上的另一個分支上。 請記住,這將在遙控器上創建或更新以上是git 怎麼push指定的commit的詳細內容。更多資訊請關注PHP中文網其他相關文章!