[英]I merged branches develop into master but on master branch no changes from develop
[英]Update develop branch from the master branch without losing any changes in develop
嗨我有一個基於master分支的開發分支。 我在開發分支中進行了更改。 現在,我的問題是如果要更新主分支,我如何基於主分支升級開發分支而不會丟失我在開發分支中的更改?
取決於你的意思是“升級”,但我認為你希望你的開發分支擁有提交大師。
所以你需要一個git merge
或git rebase
。
# merge master into develop
git checkout develop
git merge master
要么
# rebase develop on top of master
git checkout develop
git rebase master
或者,如果您的主服務器位於服務器上並且您希望從原始服務器獲取更改,則可以使用pull
命令執行相同的操作。
git checkout develop
git pull #or git pull --rebase
請注意 ,您當前的工作目錄必須是干凈的。 否則,您必須提交(或存儲)您的更改,以便從master獲取內容。
我建議你使用rebase解決方案(參見mereg vs rebase )。 假設您在您的個人開發分支中(沒有其他人使用此分支)
1保存當前dev(in):
git add <all files you created>
# -am is ; a: all added an modified m: message follows
git commit -am "<comment your commit>"
git push origin <my-dev-branch>
從這一點開始, 你不能放松任何東西,因為遙控器上有副本
然后使用遠程信息更新本地
git fetch --all
git rebase master
此時你可能不得不處理一些合並沖突
git mergetool
選中此項以設置好的合並工具
一旦解決了所有合並沖突,並重新測試了代碼,您將再次推送到服務器強制 (-f)分支更新
git push -f origin <my-dev-branch>
去開發和使用rebase。
git checkout develop
git pull --rebase origin master
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.