每當我將主分支合併到VSTS git集成中的開發分支(或副主vs)時,我都會看到已經合併的相同更改。因此,例如今天早上,我將主人的變化合併到開發中。合併,然後再次創建另一個PR從主人到發展,這些相同的變化再次顯示在PR。現在分支機構之間不應該有什麼變化嗎?VSTS GIT - 從主站 - > dev
我不確定我做錯了什麼,或者屏幕截圖可能對您有所幫助。
每當我將主分支合併到VSTS git集成中的開發分支(或副主vs)時,我都會看到已經合併的相同更改。因此,例如今天早上,我將主人的變化合併到開發中。合併,然後再次創建另一個PR從主人到發展,這些相同的變化再次顯示在PR。現在分支機構之間不應該有什麼變化嗎?VSTS GIT - 從主站 - > dev
我不確定我做錯了什麼,或者屏幕截圖可能對您有所幫助。
將master
合併爲development
分支後,再將development
分支合併到master
分支中,兩個分支的代碼將相同。
假設分支結構看起來如下面的圖合併master
支進development
分支後:
A---B---C---D---H development
\ /
E---F---G master
然後,如果你創建另一個PR通過VSTS合併development
回到master
,VSTS將使用創建另一個承諾默認如下圖提交I
而不是使用提交H
甚至它的快進合併(git merge master --no-ff
):
A---B---C---D---H development
\ /\
E---F---G---I master
但它不影響master
分支與development
分支同步。
如果你想master
分支指向同犯爲development
分支(如H
如下圖):
A---B---C---D---H development, master
\ /
E---F---G
您可以合併development
爲master
本地(git checkout master
和git merge development
),然後按當地master
到遠程,那麼development
分支和master
分支都將指向相同的提交H
。
我認爲這可行,但我認爲我發現的問題是它是默認的壓扁合併,因此它將我所有的提交和合併爲一個。當我再次合併時,它不會了解所有單獨的提交,因此它會嘗試再次將它們合併。 –