[英]Git Merge branch with Master
我有一個分支,用於將最新的更改部署到特定環境中。 我們稱之為測試。 測試分支用於將其擁有的任何內容部署到測試環境中。
現在我處理名為feature1的功能分支中的一個功能。 我已經完成了我的更改,並且已將我的功能分支中的所有內容合並為主。
測試分支中已部署到測試中的內容已成功測試並移至uat環境。 現在我想將master中的所有內容都放入測試分支中,以便將我的更改部署到測試環境中。 我有幾個問題! 我有點猶豫要做合並,因為我擔心它可能會發生沖突,我必須手動解決它們。
如何在本地和遠程更換測試分支以使用master中的最新內容? 我的主人有一個提交ID。 我希望我的測試分支根據此提交ID更新其內容。
這是一個好方法嗎? 有什么建議么?
是的,只需使用合並:
$ git checkout master
$ git merge <commit>
$ git push
如果要將master
合並到test
,請在test
分支中運行git merge
命令:
$ git checkout test
$ git merge <commit>
$ git push
基本上, git merge
將始終合並到當前分支中。
別害怕! 如果與合並遇到太多沖突,您可以隨時 - --abort
合並問題。
如果這是您想要的,您可以從主服務器中cherry-pick
一個提交到您的測試分支。 你也可以 - 如果這會導致沖突並且你不想刪除它們。
最后你可以簡單地checkout master -- .
覆蓋測試分支中任何跟蹤文件形式的主文件並查看差異。 但這將是一種非常粗魯的方式,它會創建一個與feature1和master中的提交無關的新提交。
和閱讀你手冊,請! git help merge
, git help cherry-pick
, git help reset
, git help checkout
...等等。 (如果你喜歡它,試試git help --web git
。)
我建議創建另一個由主要和測試分支組成的分支。
您可能會發現這有用: 如何查看遠程Git分支?
我有以下幾點:
git checkout master
git pull
git checkout featureBranch
git pull
git merge master
git push origin featureBranch
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.