✅ Step 1: Fetch the latest develop
Make sure your local develop branch is up to date:
git fetch origin
git checkout develop
git pull origin develop
✅ Step 2: Switch to your feature branch
git checkout your-feature-branch
✅ Step 3: Start interactive rebase
Run:
git rebase -i origin/develop
This opens an interactive rebase editor showing your commits like this:
pick 123abc Add initial feature
pick 456def fix typo
pick 789ghi try this
✅ Step 4: Squash commits
Leave the first commit as pick.
Change the rest to squash (or s):
pick 123abc Add initial feature
squash 456def fix typo
squash 789ghi try this
✅ Step 5: Edit commit message
Git will prompt you to combine commit messages. Clean it up so it looks like:
Add feature X with proper implementation
Save and exit.
✅ Step 6: Resolve conflicts (if any)
If there are conflicts:
git status
# Fix files
git add <file>
git rebase --continue
✅ Step 7: Push changes
Because history changed, you need a force push:
git push --force
✅ Result
- Your branch now has one clean commit (or a few meaningful ones).
- It’s rebased on the latest
develop. - No messy merge commits.

Leave a comment