AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Git을 활용한 기능 되돌리기: CPQ 개발자 가이드

카테고리

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

서브카테고리

DevOps

대상자

CPQ(Configure, Price, Quote) 개발자 및 Git 사용자

  • 난이도: 중간 (Git 커밋 히스토리 이해 및 명령어 실행 필요)
  • 관련 분야: Git 작업 흐름, DevOps, 버전 관리

핵심 요약

  • 되돌리기 작업은 "되돌리기 커밋"을 다시 되돌리고, 원본 커밋을 복구하는 작업
  • 커밋 히스토리에서 "Revert 'feature/spec-change'"와 같은 메시지로 되돌리기 커밋을 식별
  • git revert -m 1 명령어를 사용하여 merge commit을 되돌리고, 역순으로 복수의 되돌리기 커밋을 처리

섹션별 세부 요약

1. 되돌리기 커밋 식별

  • Visual Studio: Git 히스토리에서 "Revert 'feature/spec-change'" 메시지로 되돌리기 커밋 확인
  • Azure DevOps: 완료된 Pull Request의 "Commits" 탭에서 되돌리기 커밋의 해시값 확인
  • 명령줄: git log 명령어로 커밋 히스토리에서 되돌리기 커밋 식별

2. 새로운 브랜치 생성 및 마스터 통합

  • 마스터 브랜치 업데이트: git checkout mastergit pull origin master
  • 원본 기능 브랜치로 이동: git checkout feature/spec-change
  • 새로운 브랜치 생성: git checkout -b feature/revive-spec-change
  • 마스터 브랜치와 통합: git merge master

3. 되돌리기 커밋 반복 처리

  • 단일 merge revert 커밋 되돌리기:

```bash

git revert -m 1

```

  • -m 1 플래그: 첫 번째 부모(일반적으로 master) 유지
  • 복수의 되돌리기 커밋 처리:
  • 역순으로 처리: git revert , git revert , git revert
  • 예: 원본 커밋 C1, C2, C3 → 되돌리기 커밋 R1, R2, R3R3R2R1 순서로 처리

4. 충돌 해결 및 최종 적용

  • 충돌 발생 시:
  1. 코드 편집기에서 충돌 수동 해결
  2. git add .으로 변경 사항 스테이징
  3. git commit으로 변경 사항 커밋
  • merge commit은 되돌리지 않음:
  • 예: "Merge branch 'feature/spec-change' into master" 커밋은 무시
  • 최종 브랜치 푸시 및 PR 생성:

```bash

git push origin feature/revive-spec-change

```

  • Azure DevOps에서 새 Pull Request 생성

결론

  • 되돌리기 커밋을 역순으로 처리하고, merge commit은 제외하여 충돌을 최소화
  • Visual Studio 또는 CLI를 활용한 명령어 실행으로 작업 흐름 효율화
  • "Revert 'feature/spec-change'" 메시지를 통해 되돌리기 커밋 식별 후, 히스토리 복구 가능