>本文解决了与将特定提交推向远程分支有关的几个常见的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中文网其他相关文章!