[英]Overwrite local branch with remote tracking branch (branches have diverged)
我使用以下命令創建了一個名為my-4.3.y的新分支(注意:將my-4.3.y設置為從源頭跟蹤遠程分支4.3.y ):
git checkout -b my-4.3.y origin/4.3.y
簽出后我還沒有在my-4.3.y分支上工作。 現在,幾天后,當我運行時:
git status
它告訴我my-4.3.y和origin / 4.3.y已經發散了 。
我不在乎分支在哪里以及為什么分支,我不想將遠程分支合並到我的分支中。 我只希望我的分支再次等於遠程分支。
因此,我正在做的是:(1)簽出一些其他分支(2)刪除my-4.3.y和(3)再次簽出:
git checkout some_other_branch
git branch -D my-4.3.y
git checkout -b my-4.3.y origin/4.3.y
有更簡單的方法嗎?
您可以使用git reset --hard
強制將當前簽出的分支強制到您想要的任意點。
注意:使用--hard
不能保證目錄的安全,並且會丟棄您所做的任何更改。
對於更新到跟蹤分支的特定情況,您可以使用@{u}
指定上游
git reset --hard @{u}
通常,您可以傳入任何分支引用或Git解析為提交的任何其他內容,例如
git reset --hard origin/4.3.y
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.