This article is directly ported from my personal blog.
Imagine that there are two pull requests open on a project repository.
Each change has its own branch like this:
The challenge is to use git rebase to add both changes to master. When you finished, your master branch should have three commits in the following order:
- feat: add user-agent endpoint
- feat: add base64 endpoint
Okay, let’s go!
git clone repo_url git status git checkout feature/add-base64-endpoint git rebase master git status git checkout master git merge feature/add-base64-endpoint git status git checkout feature/add-user-agent-endpoint git rebase master
Oops! You should see
You need to check the conflicted parts and fix it. Fortunately VS Code provides some great hints for you to do that.
I personally use Vim as my IDE because I'm a huge fan of Vim!
Do not forget to check if the code base is functionable even after you resolve the conflicts, i.e. all the tests should be green, app should be functional eventually.
Once you finish resolving conflicts, follow these steps:
git add . git rebase --continue git checkout master git status git checkout master git merge feature/add-user-agent-endpoint git status git log
Boom! You must be done!
Happy gitting! 😉