Merge task branches and resolve conflicts for Ralph parallel execution. Use when merging completed task branches or resolving git conflicts...
Merge task branches and resolve conflicts intelligently using task context.
Do NOT: schedule tasks, implement features, or review design.
Always merge in topological order (dependencies first):
Merge order for tasks:
1. US-001 (no deps) โ
2. US-002 (no deps) โ
3. US-003 (depends on US-001) โ merge now
4. US-004 (depends on US-002, US-003) โ after US-003
git merge branch-name
# If conflict:
git diff --name-only --diff-filter=U
Check both tasks' mergeNotes for guidance:
# Task US-003
mergeNotes: "Auth middleware uses new user schema from US-001"
# Task US-007
mergeNotes: "Keep both route handlers, don't overwrite"
For each conflicted file:
<<<<<<<, =======, >>>>>>> markersgit add <resolved-files>
git commit --no-edit
// <<<<<<< HEAD
export { userRoutes } from './users';
// =======
export { authRoutes } from './auth';
// >>>>>>> branch
// Resolution: Keep both
export { userRoutes } from './users';
export { authRoutes } from './auth';
// Check if changes are to different parts
// If yes: combine both modifications
// If no: use mergeNotes for priority, or combine logic
// Usually safe to keep all imports
// Remove duplicates
// Check for naming conflicts
Merge plan for 5 branches:
Phase 1 (independent):
โ ralph/agent-1-us-001 โ main
โ ralph/agent-2-us-002 โ main
Phase 2 (after deps):
โ ralph/agent-3-us-003 โ main
Expected conflicts: none (different files)
โ ralph/agent-4-us-004 โ main
Potential conflict: src/routes/index.ts
Resolution hint: "Keep all route exports"
Phase 3:
โ ralph/agent-5-us-005 โ main
Depends on: US-003, US-004
If merge fails completely:
Merge failed: ralph/agent-3-us-003
Rollback steps:
1. git merge --abort
2. Review conflicts in: src/auth/index.ts
3. Options:
a) Manually resolve and retry
b) Run task again with updated context
c) Create fix task for conflict resolution
Branch preserved: ralph/agent-3-us-003
No changes made to main
After each merge:
# Check syntax
npm run typecheck # or equivalent
# Quick test
npm test -- --bail
# If fails, rollback
git reset --hard HEAD~1
โ Merged ralph/agent-1-us-001
Files: 3 changed
Conflicts: 0
Validation: passed
โ Merged ralph/agent-3-us-003
Files: 5 changed
Conflicts: 1 (resolved using mergeNotes)
- src/routes/index.ts: combined exports
Validation: passed
โ Failed ralph/agent-4-us-004
Conflicts: 2 unresolved
- src/db/schema.ts: incompatible changes
- src/types/user.ts: type mismatch
Action: manual resolution required
Branch preserved for review