# Rebase Guideline ## DEV completed and master branch has a lot of new changes, how to rebase before creating pull request * Rebase The purpose of rebase is to ensure that the changes are extending out from master branch. This can be used only if the you have committed to the branch you are working on but the changes is not pushed out yet. Rebase is equivalent to modifiation of changes history so this should be used with care. 1. Checkout **master** branch, pull the latest version and tick the selection below. ![](https://i.imgur.com/08wX5On.png) 2. Checkout your feature branch 3. Right click on master -> Rebase current changes onto master ![](https://i.imgur.com/9aIn5Hn.png) 4. If you encounter conflict, you will need to resolve the conflict first. You may use VSCode to resolve the conflict. Then you may go back to SourceTree -> Commit tab and click **Stage All** Then insert the comment and press commit 5. Repeat step 3 and 4 until there is no more conflicts to resolve If you want to continue to rebase press **Continue Rebase** If you feel like you have resolved the conflict wrongly you may **Abort Rebase** and do it from the start ![](https://i.imgur.com/sdGQdRj.png) When there is no more conflicts to resolve this means that the Rebase is completed