我使用git revert
撤銷已提交併推送到我的開發分支的更改(這是我第一次使用此命令)並且一切順利,但我需要知道是否有可能:保持開發的方式,但暫時取回這些變化,然後將它們添加到一個新的分支(不想在開發這個工作)?在git恢復並移動到單獨分支後取回更改
回答
我建議cherry-pick
你提交到新的分支(如果重置是不可能的)。
- 運行
git log
並複製尚未恢復的提交的散列。 git checkout
你的新分支。- 運行
git cherry-pick <copied-commit-hash>
你會得到完全新的不同的哈希提交。
有沒有分配新哈希的好處?我想知道,因爲這段代碼在某些時候會被合併回開發者(仍然試圖弄清楚git是如何工作的) – zero
我認爲它是存在的。基本上你需要恢復恢復以保持歷史可以理解。所以它應該是新的提交。 – peresleguine
合併後,您的更改看起來是合理的:提交 - >恢復 - >再次提交。 – peresleguine
這個完美工作: How do I create a new git branch from an old commit?
剛檢查出來的一個新的分支創造的一部分。這很簡單。
這種方法的缺點:如果您隨後與dev合併(在任一方向),恢復提交將成爲合併的一部分,最多隻會讓您發生衝突,或者最壞情況下會再次撤消這些更改。恢復回覆會保護你免受這種情況的影響 – ComputerDruid
- 1. 移動合併提交回舊分支,恢復主分支並保持更改
- 2. 合併後的git分支恢復
- 3. GIT:如何在恢復合併後從分支中提取更改
- 4. git撤消推送合併恢復單獨的分支
- 5. 恢復到git分支
- 6. 恢復分支git
- 7. 在分支中恢復git的回覆,並且可讀
- 8. 如何在Git恢復後合併分支
- 9. Git恢復更改
- 10. 成功拉取請求後更改分支並在Git中刪除分支
- 11. Git:恢復我修改後的更改合併提交
- 12. 恢復已刪除的git分支中丟失的更改
- 13. Git分歧的分支 - 恢復變化
- 14. 合併更改蓋分支到主分支中的git
- 15. 恢復到最後一次提交的git的分支
- 16. 如何將更改從一個分支移動到另一個分支git?
- 17. 恢復合併分支
- 18. 在git中自動更改分支
- 19. 在Git中更改分支
- 20. Git恢復合併後保存更改--no-ff
- 21. 恢復到合併分支之前
- 22. 在Git重置後在不同分支上恢復
- 23. Git的合併合併後,並恢復
- 24. 在當前分支上進行所有更改並將它們移動到Git中的新分支中
- 25. 如何阻止git在分支之間移動我的更改?
- 26. GIT重置分支並刪除合併後的所有更改
- 27. Tortoise GIT - 合併後顯示在分支中創建的更改
- 28. 如何恢復我合併兩個分支所做的更改
- 29. 恢復分支獨有的提交
- 30. 切換Git分支並忽略更改
你究竟是如何使用'git revert'? – Alik
'git恢復' –
zero
有很多方法可以做到這一點。你可以選擇提交到你的分支,或者你可以檢查你的分支並恢復恢復提交。 – meagar