2013-07-08 73 views
1

好吧,我有一個開發者,他有幾個不同的分支需要合併到我們的開發分支中。合併之後,他注意到一個分支的變化沒有反映在開發分支中(被推後)。修復合併錯誤的分支

我想我們可以將開發分支恢復到他嘗試進行錯誤合併之前。然後我們可以再次合併,並確保分支在我們推出之前正確合併。

不幸的是,回滾和其他所有事情,開發分支現在處於開發分支回到未合併狀態的狀態,但開發分支看到其他兩個分支已經合併。我們可以做一個git diff develop..merged-branch並查看文件是不一樣的。

我該如何着手將這些變化落實到開發分支中?在這一點上,我並不擔心歷史,我只是想正確地開發這些分支(無需創建新分支並手動輸入每個分支的更改)。

+0

你可以發佈'git log --decorate --graph --oneline master develop branchA branchB'的輸出嗎?(列出你問的所有分支)? –

+0

好吧,我終於搞定了。我們處理某些更改的方式允許我們簡單地'git回覆'回滾'合併更改的提交。顯然,一個分支不「合併」的問題是因爲它已經合併,這與此問題是分開的。在我的情況'gitk'和很多頭部劃傷終於奏效了! –

回答

1

這是什麼Linus Torvalds has to say

您或者需要在分支恢復或恢復恢復和合並之後重新分支分支。

+0

我實際上並沒有使用'git revert'來撤消合併,我實際上試圖用master上的東西(我知道,而不是我應該做的)「重置」開發分支。 'git checkout master','git merge --strategy = our develop','git checkout develop','git merge master' –

+0

我將繼續並接受你的回答。讀者應該注意,應該使用'gitk'或者使用上面的'git log --decorate --graph --oneline'來檢查你的git repo,以確保你在做一些非常激烈的事情之前找不到更簡單的解決方案。比如像我這樣做了一個無法承認的分支。 –