从 master 分支更新 develop 分支而不丢失 develop 中的任何更改
Update develop branch from the master branch without losing any changes in develop
嗨,我有一个基于主分支的开发分支。
我在开发分支中进行更改。
现在,我的问题是如果要更新master分支,如何在master分支的基础上升级develop分支而不丢失我在develop分支上的更改?
取决于你的意思"upgrade",但我假设你希望你的开发分支拥有 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 )。假设您在 个人 开发分支(没有其他人使用此分支)
第一次保存您当前的开发(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
检查 以设置一个好的合并工具
一旦你解决了所有的合并冲突,re-tested 你的代码你将再次推送到服务器 forcing (-f) 分支更新
git push -f origin <my-dev-branch>
使用 rebase 进行开发和拉动。
git checkout develop
git pull --rebase origin master
嗨,我有一个基于主分支的开发分支。 我在开发分支中进行更改。 现在,我的问题是如果要更新master分支,如何在master分支的基础上升级develop分支而不丢失我在develop分支上的更改?
取决于你的意思"upgrade",但我假设你希望你的开发分支拥有 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 )。假设您在 个人 开发分支(没有其他人使用此分支)
第一次保存您当前的开发(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
检查
一旦你解决了所有的合并冲突,re-tested 你的代码你将再次推送到服务器 forcing (-f) 分支更新
git push -f origin <my-dev-branch>
使用 rebase 进行开发和拉动。
git checkout develop
git pull --rebase origin master