Usage
vibe merge <branch> [options]
Description
Merge the specified branch into the current branch. This combines the commit history from both branches.
Arguments
Branch to merge into the current branch.
Options
Custom merge commit message.
Create a merge commit even if fast-forward is possible.
Show what would be merged without actually merging.
Examples
Basic Merge
vibe merge feature/user-auth
Output:
Merging 'feature/user-auth' into 'main'...
3 commit(s) to merge
Fast-forward merge completed.
main is now at commit abc1234
Merge with Custom Message
vibe merge feature/payments -m "Add payment processing feature"
Preview Merge (Dry Run)
vibe merge feature/api --dry-run
Output:
[Dry run] Would merge:
Source: feature/api (commit def5678)
Target: main (commit abc1234)
Commits ahead: 5
Commits behind: 0
Merge type: Fast-forward possible
Force Merge Commit
vibe merge feature/ui --no-ff
Creates a merge commit even when fast-forward is possible, preserving branch history.
Merge Types
Fast-Forward Merge
When the target branch has no new commits since the source branched off, Git can simply move the pointer forward.
Before:
main: A---B
\
feature: C---D
After (fast-forward):
main: A---B---C---D
Merge Commit
When both branches have diverged, a merge commit is created.
Before:
main: A---B---E
\
feature: C---D
After (merge commit):
main: A---B---E---M
\ /
feature: C---D
Workflow Example
# Start on main branch
vibe checkout main
# Make sure you have latest changes
vibe pull
# Merge the feature branch
vibe merge feature/new-dashboard
# Push the merged changes
vibe push
Error Messages
Cannot Merge into Itself
Cannot merge branch 'main' into itself
Solution: Switch to the target branch first, then merge the source branch.
Already Up to Date
This means there are no new commits to merge.
Branch Not Found
Branch 'feature' not found
Solution: Check the branch name with vibe branch or fetch latest with vibe fetch.
Merge Failed
Merge failed: Conflicts detected
Solution: Resolve conflicts manually in the web interface or use force options.