开发者

Merging multiple git branches into master?

So I have 3 git branches:

  • master
  • refresh
  • auth_upgrade

I haven't really been using branches like I should..开发者_如何学Python.so master is way out of date, refresh is somewhat out of date and auth_upgrade is actually the branch that is completely current.

So...I ultimately want to make auth_upgrade the master branch and then git push it to my github repo.

What's the best process for doing that?


You could pull auth_upgrade into master.

$ git co master
$ git pull . auth_upgrade
  • then do mainline work on master and use this branch to sync with your remote ..
  • apply the same procedure to refresh, if there are some unique changes you want to include ..

see:

$ man git-pull

    git-pull - Fetch from and merge with another repository or a local branch


You can rename branches with the git branch -m option:

git branch -m master old_master
git branch -m auth_upgrade master


If when you say 'out of date' the old branches are strict ancestors then you don't really have any merge issues.

If you just want to make your current branch into the master branch on your remote repository you can just do:

git push origin HEAD:master

Edit: from one of your comments it sounds like you don't have all of the changes from remote master in your current branch, though, so you may need to merge them in before pushing successfully:

git fetch
git merge origin/master

You can then delete you local branches. delete with a small -d is safe in that it only deletes branches that are ancestors of your current branch.

git branch -d master
git branch -d refresh.

If it bothers you that your local branch isn't called master you can now do:

git checkout -b master
git branch -d auth_upgrade
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜