Skip to content

Feature: Interactive Rebase UI #29

Description

@zelon

기능 요약

히스토리 탭에서 커밋을 선택하여 Interactive Rebase를 GUI로 수행할 수 있는 기능입니다.

배경

현재 wimygit은 git rebase -i를 GUI로 지원하지 않아 커밋 정리 작업 시 터미널을 별도로 사용해야 합니다. GitKraken, Fork, SourceTree, Sublime Merge 등 대부분의 주요 클라이언트가 지원하는 핵심 기능입니다.

제안하는 구현 방식

  • 히스토리 탭에서 특정 커밋 우클릭 → "Rebase onto here..." 메뉴
  • 해당 커밋 이후의 커밋 목록을 드래그로 순서 변경 가능한 모달로 표시
  • 각 커밋에 대해 다음 액션 선택 가능:
    • pick (기본)
    • squash / fixup — 이전 커밋과 합치기
    • reword — 커밋 메시지만 수정
    • drop — 커밋 삭제
    • edit — 해당 커밋에서 멈추기
  • "Start Rebase" 버튼으로 실행
  • 충돌 발생 시 기존 MergeEditor를 재사용하여 해결 후 continue/abort 버튼 제공

기대 효과

PR 제출 전 커밋 정리, squash merge 준비, 불필요한 커밋 제거 등 일상적인 작업을 터미널 없이 수행 가능.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions