Git revert --no-commit: 자동 커밋 없이 여러 커밋 되돌리기
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Git revert --no-commit: 여러 커밋을 자동 커밋 없이 되돌리는 방법

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

  • Git 초보자, 중급자, 고급 개발자
  • 난이도: 중급 이상 (커밋 히스토리 관리 및 툴 사용 경험 필요)

핵심 요약

  • git revert --no-commit다중 커밋을 되돌리되 자동 커밋 없이 변경 사항을 적용하여 수정 후 수동 커밋 가능
  • 커밋 범위 지정(oldest-commit^..newest-commit)으로 범위 내 모든 커밋을 단일 커밋으로 되돌리기 가능
  • 부분적 되돌리기--no-commit 사용 후 파일 수정 후 수동 커밋으로 원하는 변경만 유지 가능
  • git revert --no-commit공유 저장소에서 안전한 히스토리 수정을 위해 설계됨

섹션별 세부 요약

1. `git revert` 기본 개념

  • git revert는 이전 커밋의 변경 사항을 새로운 커밋으로 되돌림
  • git reset과 달리 히스토리 삭제 없이 작업 가능 (공유 저장소 사용 시 안전)
  • 예시:

```bash

git revert

```

2. `--no-commit` 플래그 사용 목적

  • 다중 커밋 되돌리기 시 수동 커밋으로 통합 가능
  • 변경 사항 검토 후 커밋 결정 가능
  • 예시:

```bash

git revert --no-commit C

git revert --no-commit B

git commit -m "Reverted B and C together"

```

3. 커밋 범위 지정으로 단일 커밋 되돌리기

  • oldest-commit^..newest-commit 형식으로 범위 지정
  • 예시:

```bash

git revert --no-commit B^..D

git commit -m "Reverted commits B, C, and D together"

```

4. 부분적 되돌리기(Keep Some Changes)

  • --no-commit으로 되돌린 후 수정된 파일 수동 추가
  • 예시:

```bash

git revert --no-commit C

git add .

git commit -m "Partial revert of C (kept critical fixes)"

```

5. 되돌리기 + 즉시 수정 통합

  • --no-commit 사용 후 수정 내용 추가 후 단일 커밋
  • 예시:

```bash

git revert --no-commit B

echo "Hotfix for edge case" >> file.txt

git add .

git commit -m "Reverted B + added critical hotfix"

```

결론

  • git revert --no-commit을 사용하여 다중 커밋을 단일 커밋으로 되돌리거나, 수정 사항을 통합하여 깔끔한 히스토리 관리 가능
  • 커밋 범위 지정(oldest-commit^..newest-commit)과 수동 커밋은 히스토리 관리의 유연성을 높임
  • 공유 저장소에서는 히스토리 삭제 없이 안전한 되돌리기를 위해 git revert 사용 권장