2
我有點尷尬。我意外地在兩個Git存儲庫之間合併了代碼。無論出於何種原因,回購股票的名稱都是相同的,並且在我開始瞭解回購股票之前,其中一個回購網站的網址已經更改。所以我最終合併了來自兩個不同項目的代碼。以下是庫提交中的插圖。如何刪除Git合併?
我沒有任何名爲分支(一直以來的工作HEAD)。如何刪除其中一個提交(特別是橙色提交)?
我有點尷尬。我意外地在兩個Git存儲庫之間合併了代碼。無論出於何種原因,回購股票的名稱都是相同的,並且在我開始瞭解回購股票之前,其中一個回購網站的網址已經更改。所以我最終合併了來自兩個不同項目的代碼。以下是庫提交中的插圖。如何刪除Git合併?
我沒有任何名爲分支(一直以來的工作HEAD)。如何刪除其中一個提交(特別是橙色提交)?
你可以這樣做:
git reset --hard 628612ac
如果你確信你沒有在當前的工作拷貝任何東西,你將需要。這會將HEAD
提交到合併前的提交。實際上沒有任何東西被刪除 - 其他提交變得無法訪問,將來會有垃圾收集。
另一種選擇是使用git-revert
:
git revert -m 1 e90aeed8
這將讓你的歷史記錄。它創建了一個新的提交,恢復e90ae ...做的所有事情。
這裏有一個關於這個問題的好讀:https://www.kernel.org/pub/software/scm/git/docs/howto/revert-a-faulty-merge.txt
謝謝! git revert在本地執行了這個技巧,並且git reset - 在遠程repo上工作。鏈接確實非常有用! –