1
假設有人已經用一些廢話更新了遠程起源,我想忽略它。我的回購看起來像從歷史記錄創建一個新的提交
A-B-C-D
和遠程是
A-B-C-D-E-F
我基本上要拋棄è&女,但保留了歷史,所以希望的結果會是什麼樣子
/-----\
A-B-C-D-E-F-G
我無法看到如何重置或回覆,而無需重新播放頂部的E & F.我看不到如何合併而不保留E的更改。 D & D應該基本相同。
假設有人已經用一些廢話更新了遠程起源,我想忽略它。我的回購看起來像從歷史記錄創建一個新的提交
A-B-C-D
和遠程是
A-B-C-D-E-F
我基本上要拋棄è&女,但保留了歷史,所以希望的結果會是什麼樣子
/-----\
A-B-C-D-E-F-G
我無法看到如何重置或回覆,而無需重新播放頂部的E & F.我看不到如何合併而不保留E的更改。 D & D應該基本相同。
所以,你想撤消E和F的變化,但在歷史中保留E和F?使用git revert
與-n
(不提交)選項:
$ git revert -n $F
$ git revert -n $E
# Fix conflicts, check to make sure the reverts look good, etc.
$ git commit
爲什麼我會帶F那麼E兩兩個復歸命令?我得到了它與測試回購工作,並愉快地恢復後,一些怪物合併。有沒有簡單的方法來接受所有的目標變化? – Wil 2010-09-01 15:28:01
'git revert'一次只能恢復一次提交;我的印象是你想恢復* *提交*單一*恢復提交。 – mipadi 2010-09-01 15:37:55
我可以跳過F嗎?可以直接去E嗎?從本質上講,它只是將HEAD重置爲之前的狀態,所以使用'-n'標誌我可以編輯,創建一個新的提交消息並繼續前進? E&F仍然會在歷史中,但是它們的變化在'revert -n $ E'之後會在合併中恢復? – Wil 2010-09-01 16:15:45