2014-01-06 50 views
0

男人,這個Git的東西肯定是一個難題!繼續工作,並在恢復/重置後在同一分支上承諾

所以我有這個分支:

一個 - B - C - d - mybranch

我會做什麼這裏是回去犯 'B',並繼續工作和承諾。但我不想重新分支,也不想鬆開'c'和'd'提交。 我一直在閱讀關於這個git revert的東西,但是無法把所有值得的東西包裹在它的周圍。

幫助!

+3

如果您想要創建從'b' **開始的新提交併**保留'c'和'd',您必須創建一個分支。 –

回答

1

如前所述,有沒有辦法做到這一點,而無需創建一個新的分支(除非你想進入一些高風險的業務與「裁判」的歷史,並承諾沒有被收集垃圾,這是不當存在簡單的解決方案時,在這種情況下值得)。

創建一個新的分支來存儲你要保存提交,但不希望在你的mybranch

git checkout -b newBranch

回到mybranch,以消除提交 'c' 和 'd'。

git checkout mybranch

git reset --hard b

現在,您可以繼續在mybranch從犯 'B' 的工作。稍後,如果您想將提交'c'和'd'帶回mybranch,則可以從mybranch執行git merge newBranch