![](/img/trans.png)
[英]Merge changes from branch into different branch without merging the branch
[英]How to merge a branch without also merging changes from previous branches
我對 git 有點陌生,並且對分支和合並這些分支有疑問。
假設在我的項目倉庫中,我有 3 個“主要”分支:Alpha、Beta、Production。
這是我面臨的一個場景:
我目前在本地機器上的 Alpha 分支上工作。 我從 Alpha 創建了一個新分支,我們稱之為feature/newFeature
。 創建功能后,我提交並推送更改,然后將feature/newFeature
合並到 Alpha 分支中以供 QA 測試。 如果 QA 批准,則將其合並到 Beta,然后是 Production 等。
現在,在feature/newFeature
被合並到 Alpha (而不是任何其他分支)之后,我從 Alpha 創建了另一個分支,稱之為fix/hotfix
。 在修復了需要修復的內容后,我也將此分支合並到 Alpha 中。
但是(這是我面臨的問題),假設fix/hotfix
已經過測試並且正在運行並且可以合並到 Beta 中,但feature/newFeature
功能仍在 Alpha 上進行測試。 如果我嘗試將fix/hotfix
分支合並到 Beta 中,它也會將feature/newFeature
分支中的更改合並到 Beta 中(我顯然不想要,因為它仍在測試中)。
我理解為什么會發生這種情況,因為當我將feature/newFeature
合並到 Alpha 中,然后在合並后從 Alpha 創建fix/hotfix
分支時, fix/hotfix
分支還包含來自feature/newFeature
分支的更改。
我的問題是:有沒有什么方法可以將fix/hotfix
分支合並到 Beta 中,而不會合並以前不應該合並的分支/更改?
您始終可以復制修復/修補程序分支並將其重新設置為 beta
git checkout fix/hotfix
git checkout -b fix/hotfix-copy
git rebase beta
這應該讓您了解 beta 分支上的修補程序更改。 然后只需合並修補程序
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.