2015-02-24 109 views
6

我有拉到不同於分支的分支。這兩個分支是不同的,但合併發生在我目前的分支上。我目前正在「master」分支上工作,並且已經更新了遠程分支 - 「FE_Changes」的更改。撤消主分支上的錯誤分支的git拉

如何從主分支中刪除「FE_Changes」分支的影響?

+0

你在使用git和IDE嗎?終奌站?或類似的東西? – acostela 2015-02-24 12:42:17

+0

是的我實際上使用Git擴展。當我在「主」分支中插入「FE_Changes」分支時發生這種情況。我應該使用的是結賬對話框。 – OverTheEdge 2015-02-24 12:48:16

+0

你可以顯示以下命令的輸出(儘可能多): git log --all --graph --oneline --decorate 假設提交日誌中沒有敏感信息,當然...它應該有助於澄清究竟發生了什麼 – mephisto 2015-02-24 12:48:28

回答

7

git reset --hard HEAD~1

這將核彈最近在當地分行承諾。假設你的pull策略是合併的,那麼你的本地master分支應該只有一個流氓提交。你提到「合併默默發生」,所以這應該適用於你的情況。一旦你修復了主分支,你可以再次拉動,這次確保你從正確的遠程分支拉。

+0

哇,我必須說我在Git Extensions GUI上做了一些瘋狂的事情,比如退出起源/主人,git res et(頭部不是HEAD〜1),但是這個重寫並且帶來了變化。更重要的是,我現在可以再次從遠程獲得最新的「主」更新。現在在我的本地「主」分支中看不到「FE_Changes」分支所做的更改。非常感謝蒂姆。 – OverTheEdge 2015-02-25 03:47:58

4

除了添的回答是: 如果你想重置爲特定承諾:

git reflog 

會告訴你所有近期提交

的IDS然後你就可以執行:

git reset --hard <specific id> 

重置爲該特定的提交。

+0

感謝將來會記住「git reflog」。 – OverTheEdge 2015-02-25 03:49:15