Conflict Resolution
Radius can parse and resolve Git merge conflicts programmatically.
View Conflicts
bash
radius solve-conflict <file>Example
Given a file with conflicts:
typescript
function greet(name: string) {
<<<<<<< HEAD
return "Hello, " + name;
||||||| base
return "Hi, " + name;
=======
return "Hey, " + name;
>>>>>>> feature-branch
}Running:
bash
radius solve-conflict src/greet.tsOutput:
file: /project/src/greet.ts
conflicts: 1
=== conflict 1 (lines 2-...) ===
--- ours (HEAD) ---
return "Hello, " + name;
--- base ---
return "Hi, " + name;
--- theirs (feature-branch) ---
return "Hey, " + name;Resolve Conflicts
Accept One Side
bash
# Accept our changes (HEAD)
radius solve-conflict src/greet.ts --accept ours
# Accept their changes
radius solve-conflict src/greet.ts --accept theirsResolve Specific Conflict
When multiple conflicts exist:
bash
# Resolve only conflict 2
radius solve-conflict src/file.ts --id 2 --accept oursCustom Resolution
Provide your own merged content:
bash
radius solve-conflict src/greet.ts --id 1 --content ' return `Hello, ${name}!`;'Output
After resolution:
resolved: conflict 1 → ours
file: /project/src/greet.ts
remaining conflicts: 0Conflict Format Support
Radius supports standard Git conflict markers:
Two-way Merge
<<<<<<< HEAD
our changes
=======
their changes
>>>>>>> branch-nameThree-way Merge (with base)
<<<<<<< HEAD
our changes
||||||| base
original content
=======
their changes
>>>>>>> branch-nameWorkflow Example
Typical conflict resolution workflow:
bash
# 1. View all conflicts
radius solve-conflict src/file.ts
# 2. Review each conflict and decide
# For conflict 1: accept ours
radius solve-conflict src/file.ts --id 1 --accept ours
# 3. For conflict 2: custom merge
radius solve-conflict src/file.ts --id 2 --content "merged content"
# 4. Verify no conflicts remain
radius solve-conflict src/file.ts
# Output: conflicts: 0
# 5. If you made a mistake
radius undoUndo Support
Conflict resolutions are tracked:
bash
radius solve-conflict src/file.ts --accept theirs
radius undo # Restore conflict markers