簡體   English   中英

丟棄Git提交並合並功能分支回Master

[英]Discard Git commits & merge feature branch back to Master

在此輸入圖像描述

  • 首先,我在Master分支上做了3次提交: Wijzing 1,2,3
  • 然后我做了checkout ... on commit Wijziging 1
  • 然后我創建了一個新的分支新功能並開始進行更改。
  • 現在我想扔掉2個提交: Wijzing 2Wijziging 3
  • 我想將新功能與Master合並。

更新:

完成這些步驟后,我執行以下操作:

git checkout master
git reset --hard HEAD^^
git merge new-feature

然后我點擊SourceTree 在此輸入圖像描述

更新:解決方案是強制推送:

git push -f

在推力之后它再次起作用。

在此輸入圖像描述

這應該做的伎倆:

git checkout master
git reset --hard HEAD^^
git merge new-feature

基本上,您需要將master分支指針移回兩個提交,然后將new-feature分支合並到它。 請注意, git reset --hard是一個具有潛在危險的命令,因為它會丟棄對工作副本中跟蹤文件的任何更改。

您可能需要執行強制推送,以防丟棄的提交已被推送到遠程:

git push -f 

在你的特殊情況下,一個簡單的

git checkout new-feature
git branch -f master
git checkout master

接下來是

git push -f

應該做的伎倆。 git branch -f命令只是將master分支指向當前HEAD ,丟棄了master的舊歷史。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM