如何將我的工作和更改從master
分支移動到新創建的分支,並在移動後保持主分支完好無損?如何將更改從一個分支移動到另一個分支git?
回答
您可以創建一個新的分支指向當前(如果你想直接檢查出來或git checkout -b branchname
)提交使用git branch branchname
。這將基本上覆制你的主分支,所以你可以繼續在那裏工作。
如果您已成功複製分支,則可以使用git reset --hard commit
將master
重置爲其原始點,其中commit
是提交的哈希,該提交應該是主設備上的最後一個提交。
因此,例如,你有這樣的情況:
---- 1 ---- 2 ---- 3 ---- 4 ---- 5 ---- 6
^ ^
original master
master commit
所以,你已經簽出的承諾6
master
,你要創建一個新的分支ticket
指向一個6
復位時master
到3
:
git branch ticket
git reset --hard 3
git checkout ticket
然後你在ticket
指着犯6
,而master
點到3
。
如果你有犯(說)你實現2次後,你應該已經在一個分支,然後簡單地做
git branch work_branch
git reset --hard HEAD~2
與提交你想回去的數量更換2。如果您想要轉移到分支以繼續工作,只需要git checkout work_branch
請參閱git rev-parse --help
如果您想了解如何遍歷備份提交樹的語法HEAD~2
嗨@Mark Fisher,您是什麼意思「2次」? –
@adrianmann - 我的意思是如果你做了2個單獨的工作,添加更改並提交每個工作,所以你的歷史看起來像開始 - > A - > B,其中A和B是2個提交。 –
多數民衆贊成,非常感謝一百萬。 –
創建一個新的分支從你應該有的地方,然後櫻桃選擇不正確的分支到新分支的變化。
然後,您可以刪除不好的分支,假設您尚未將其推送到其他地方並對其進行其他更改。
- 1. 將提交從一個分支移動到另一個分支
- 2. Git - 將舊分支移動到另一個分支是什麼?
- 3. 如何將一些修訂從一個分支移動到另一個分支?
- 4. 使用git,如何將一些未提交的更改從一個分支移動到另一個分支中的另一個分支?
- 5. 如何將所有提交從一個分支移動到另一個分支?
- 6. 如何將更改從一個分支推送到另一個分支?
- 7. 將分支的一個子分支的更改複製到Git中的另一個分支的子分支
- 8. 從一個git分支移動到另一個只應用我的更改
- 9. 自動Git合併:一個分支到另一個分支
- 10. Git從一個分支複製到另一個分支
- 11. 將多個提交從一個分支移動到另一個分支?
- 12. SVN:我如何將一個分支移動到另一個分支的頂部?
- 13. Git:將提交從主控移動到另一個分支
- 14. TFS擱架從一個分支遷移到另一個分支
- 15. 如何將一個分支複製到另一個分支而不管更改?
- 16. Git是如何從另一個分支
- 17. 將分支移動到另一個分支
- 18. Git - 如何有選擇地將更改從一個分支應用到另一個分支?
- 19. 如何在Git中將一個分支複製到另一個分支
- 20. Git分支從當前分支的另一個分支
- 21. 使用git如何將代碼從一個分支轉移到另一個現有分支(不一定是master)?
- 22. svn從一個移動分支合併到一個新分支
- 23. 將SVN從一個分支複製到另一個分支
- 24. 分支模型:如何將分支完成的更改移至另一分支
- 25. git將本地(?)分支的更改合併到另一個本地分支
- 26. 如何避免git分支被合併到另一個分支?
- 27. Android Studio Git將提交的更改移動到另一個分支
- 28. Git:將特定提交移動到另一個分支
- 29. Git將其他分支合併到另一個分支?
- 30. 如何將分支(或指定的提交)移動到另一個分支?
這將工作,如果你的新分支應該出來'主'。如果你需要一個不同的開發路線,你必須看看[git-rebase](http://linux.die.net/man/1/git-rebase) – che
真棒。謝謝。什麼是「-b」呢? – Ramy
'git checkout'中的'-b'告訴Git在檢出之前創建分支。它基本上是'git分支名稱'和'git checkout name'的快捷方式;當你想開始在某個新分支上工作時,你通常會使用它。 – poke