Skip to content

feat(rebase): add interactive rebase editor #26

@CalvinAllen

Description

@CalvinAllen

Description

Add a visual interactive rebase editor that provides a user-friendly interface for git rebase -i operations, making it easy to reorder, squash, edit, and drop commits.

Features

Visual Editor

  • List of commits in rebase sequence
  • Drag-and-drop commit reordering
  • Action dropdown per commit (pick, reword, edit, squash, fixup, drop)
  • Color-coded actions for visual clarity
  • Commit details preview panel

Rebase Actions

  • pick - Use commit as-is
  • reword - Edit commit message
  • edit - Stop for amending
  • squash - Combine with previous commit
  • fixup - Combine with previous, discard message
  • drop - Remove commit entirely

Editor Controls

  • Start rebase button
  • Abort rebase button
  • Continue rebase (after edit/conflict)
  • Skip commit button
  • Reset to original order

Conflict Resolution

  • Visual conflict indicator
  • Quick access to merge tool
  • Mark as resolved action
  • Abort option during conflicts

Visual Elements

  • Commit SHA (abbreviated)
  • Commit message (first line)
  • Author and date
  • Action indicator/dropdown
  • Reorder handle (drag grip)
  • Expand for full commit details

Configuration Options

  • Auto-open editor for rebase -i
  • Default action for new commits
  • Confirm before starting rebase
  • Show commit details by default

Acceptance Criteria

  • Editor opens for interactive rebase operations
  • Drag-and-drop reordering works
  • All rebase actions can be applied
  • Rebase executes correctly with configured actions
  • Conflict resolution workflow functions
  • Abort/continue/skip operations work

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestphase-4Phase 4: Advanced Featurespriority: lowLow priority item

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions