簡體   English   中英

如何將功能分支合並到Git中的分支開發?

[英]How to merge features branches to branch develop in Git?

我是Git的新手,我有一個簡單的問題

盡管在此論壇中已經多次詢問了此問題,但我想將我的問題限制在以下情況下

1)  Feature A  (Files A, B and C were modified) cut from 'develop'
2)  Feature B  (Files A and D were modified) cut from 'develop'

功能A已成功合並到分支“開發”中

現在的問題是,我們應該采用哪種方法將“功能B”合並為分支“開發”

我們應該提取最新版本的“ develop”並合並“ feature b”的更改嗎?(或)還有什么其他最佳方法將“ feature b”合並到“ develop”,以便“ File A”具有所有更改?

讓我們說,您不會在合並/變基之間產生沖突,並且為了簡單起見,您在本地工作(沒有提取/拉取/推動)。

基本上有兩種方法可以進行。 合並或重新定基。 兩者都得到相同的結果。 您可以根據自己的工作政策來決定。

您可以合並:

                     //      C3-C4
git checkout develop //     /     \
git merge featureB   // C1-C2--C5--C6

或者,您可以重新設置基准:

                       //      C3-C4
git checkout featureB  //     /
git rebase develop     // C1-C2--C5--C3'--C4'

提交C6C4'中的代碼相同。

如果您使用“合並”策略,則可以通過GUI(例如gitk)查看正在快速執行的不同功能。

如果您使用“重新設置”策略,則在使用git log等命令時,可以更輕松地了解proyect的演變

如果您一個人在FeatureB分支上工作,則進行pull --rebase develop是最佳實踐:您正在FeatureA上重播FeatureB更改。 (和git push --force之后)。

如果你有多個開發人員的工作FeatureB ,那么合並develop ,以FeatureB有許多工作要做,合並前FeatureB發展。

在這兩種情況下,想法都是相同的:在合並回develop之前,在本地測試兩個功能的集成(拉動或變基)。

不要先合並develop ,“希望”(在develop )結果“足夠好”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM