Git新手在這里,提前感謝您的幫助:我做了以下作業:
- 從標簽 v1.9 創建一個新分支(我稱之為 MyBranch1.9)
- 進行一些編輯、提交并同步到遠程分支
- 從較早的標簽 v1.8(稱為 MyBranch1.8)創建一個新分支
我想得到以下結果:
- 我所做的編輯(上面的#2)最終出現在 MyBranch1.8
- 其他人所做的編輯(標簽 v1.8 和 v1.9 之間的編輯)不會在 MyBranch1.8 中結束。實際上,我只想反向移植我對 MyBranch1.8 所做的更改。
請問如何讓Git做到這一點?我嘗試過以互動方式進行變基,但它似乎試圖將 MyBranch1.9 中的所有提交帶到 MyBranch1.8。
如果您可以分享 git 命令列語法,則超級獎勵積分,因為我是新手。謝謝!
uj5u.com熱心網友回復:
這方面的檔案直接來自git rebase手冊頁:
以下是如何將基于一個分支的主題分支移植到另一個分支,假裝您使用 rebase --onto 從后一個分支分叉了主題分支。
首先讓我們假設您的主題是基于下一個分支。例如,在主題中開發的功能取決于下一個中的某些功能。
o---o---o---o---o master \ o---o---o---o---o next \ o---o---o topic我們想從分支 master 分叉出主題;例如,因為主題所依賴的功能被合并到更穩定的主分支中。我們希望我們的樹看起來像這樣:
o---o---o---o---o master | \ | o'--o'--o' topic \ o---o---o---o---o next我們可以使用以下命令來獲取它:
git rebase --onto master next topic
因此,對于您的具體情況,您需要:
git checkout MyBranch1.9
git rebase --onto v1.8 <base> MyBranch1.9
<base>您從哪個分支分支的名稱在哪里MyBranch1.9
。此時您可能想要替換舊MyBranch1.8分支:
git branch -D MyBranch1.8
git branch -m MyBranch1.9 MyBranch1.8
請注意,我在這里一直假設您沒有在MyBranch1.8分支中進行任何更改。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/432577.html
