문서
인터랙티브 리베이스
인터랙티브 리베이스는 git rebase -i를 시각적 흐름으로 바꿉니다. 드래그로 커밋 큐를 재정렬하고, 커밋을 하나씩 적용하고, 충돌을 시각적으로 해결합니다 — 커맨드라인 불필요.
시작
브랜치 창을 열고 Filter branches... 상자에 입력해 대상 브랜치를 찾은 뒤 마우스 오른쪽 클릭 → Rebase Current Branch onto '{branch}'로 현재 브랜치를 대상 위로 리베이스합니다. 패널은 리베이스 보기로 전환되어 네 단계를 진행합니다:
1. 커밋 큐 편집
대상에 없는, 여러분 브랜치의 커밋이 큐를 이룹니다:
- 드래그로 재정렬;
- 각 커밋에 동작 드롭다운:
pick(유지) /squash(이전 것에 접기, 메시지 병합) /fixup(접기, 메시지 버림) /edit(멈춰 수정) /drop(버림); - 스쿼시·드롭된 커밋은 시각적으로 접힙니다.
2. 적용
Start Rebase가 큐를 대상 위에 커밋 단위로 재생합니다. 실시간 진행률 표시줄과 함께. 충돌이 없으면 곧장 완료까지 달립니다. Abort로 언제든 빠져나올 수 있습니다.
3. 충돌(있다면)
적용 중 충돌이 발생하면 충돌 보기로 전환됩니다 — 파일 목록과 네 가지 모드(Merge / Split / Raw / AI)의 병합 편집기. 충돌한 각 헝크가 자기만의 결정(Ours / Theirs / Both …; 충돌 해결 참조)을 받습니다. 모든 파일이 해결되면 Continue로 리베이스를 재개합니다.
4. 완료
완료되면 패널이 Branch '{branch}' was rebased onto '{target}'을 확인해 주고 푸시 카드를 보여 줍니다 — 리베이스가 역사를 다시 썼으므로 원격 브랜치를 강제 갱신해야 합니다:
Force Push with Lease— 권장: 다른 사람이 푸시하지 않았을 때만 덮어쓰며 평범한--force는 쓰지 않습니다;Not now— 푸시 건너뜀. 로컬 리베이스는 이미 완료되었습니다.
리베이스 중에도 세션은 사용 가능합니다. 패널을 닫아도 실행 중인 리베이스는 중단되지 않습니다.