Skip to content

feat: Git 변경 파일 전체 선택 버튼 추가 - #94

Merged
soyuo merged 1 commit into
devfrom
feature/git-select-all
Oct 13, 2026
Merged

soyuo merged 1 commit into
devfrom
feature/git-select-all

Conversation

@soyuo

@soyuo soyuo commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

변경 목적

Git 변경 파일을 개별 체크하지 않고 한 번에 선택할 수 있도록 커밋 버튼 왼쪽에 전체 선택 버튼을 추가합니다.

변경 사항

  • macOS·Windows: 전체 선택 → 커밋 → 푸시 순서로 버튼 배치
  • 현재 목록의 미선택·부분 선택 파일을 기존 비동기 스테이징 경로로 처리
  • 이미 스테이징된 파일 유지, ignored 파일은 포함하지 않음
  • 처리 중 중복 실행 방지, 기존 완료 후 새로고침·오류 처리 사용
  • 좁은 사이드바의 버튼 폭 조정
  • 선택 대상·할당 수명·실제 Git 스테이징 회귀 테스트

관련 이슈

사용자 요청: 커밋 버튼 왼쪽의 변경 파일 전체 선택 버튼.

구현 범위

  • C17 코어
  • Windows / Win32
  • macOS / AppKit
  • 웹 프론트엔드
  • 백엔드
  • 플러그인 / 마켓플레이스
  • 빌드 / 배포
  • 테스트
  • 문서
  • 기타:

검증

  • 빌드 확인
  • 자동화 테스트 통과
  • 수동 동작 확인
  • 검증 내용:
    • 로컬 macOS Release 빌드 및 CTest 37개 통과(31.43초)
    • 별도 리뷰: 추가 발견 사항 없음
    • 부분 선택·삭제·이름 변경·새 파일·ignored 파일을 가진 실제 저장소 검증
    • 전체 선택 후 모든 표시 파일이 스테이징되고 HEAD는 변경되지 않음
    • Windows·macOS CI 빌드·테스트·패키징 모두 통과
    • CI: https://github.com/team-native/Axyne/actions/runs/38368167609

영향 및 호환성

  • 사용자에게 보이는 변경: 커밋 왼쪽에 전체 선택 버튼 추가
  • API 또는 데이터 호환성 영향: 기존 Git API 유지, 공통 경로 스냅샷 helper 추가
  • 성능 / 메모리 영향: 표시된 미선택 경로를 복사해 기존 작업 스레드에 전달
  • 마이그레이션 또는 배포 시 주의사항: 없음

리뷰어 참고사항

기존 체크박스는 Git index의 스테이징 상태를 뜻하므로 전체 선택도 스테이징을 수행합니다. 자동 커밋·푸시·전체 해제 토글은 추가하지 않습니다. 현재 목록에 표시된 파일만 대상으로 하고 작업 중 메시지와 기존 개별 선택 동작을 유지합니다.

체크리스트

  • 변경 범위가 PR 목적에 맞습니다.
  • 기존 기능을 불필요하게 변경하지 않았습니다.
  • 필요한 테스트와 문서를 추가하거나 업데이트했습니다.
  • 민감정보, 디버그 코드, 불필요한 파일이 포함되지 않았습니다.
  • 관련 Notion 명세 및 API 문서와 충돌하지 않습니다.

@soyuo soyuo added the Feature label Oct 13, 2026
@soyuo
soyuo merged commit 6b51a63 into dev Oct 13, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant