Git의 히스토리 재작성 도구 | 설명

Git Ui Hiseutoli Jaejagseong Dogu Seolmyeong



때때로 개발자는 API 키, 계정 자격 증명 또는 개인 데이터와 같은 민감한 정보를 실수로 커밋합니다. Git 기록을 다시 작성하면 다른 사람이 액세스할 수 없도록 리포지토리에서 이 민감한 정보를 제거할 수 있습니다. 경우에 따라 개발자는 커밋의 순서나 구조를 재구성하기를 원할 수 있습니다. 여기에는 커밋 재정렬, 관련 커밋 결합 또는 큰 커밋을 더 작고 집중된 커밋으로 분할하는 작업이 포함될 수 있습니다.

이 튜토리얼은 Git 기록 도구를 다시 작성하는 방법을 자세히 보여줍니다.







Git의 다시 쓰기 기록 도구는 무엇입니까?

Git에서 ' 다시 쓰는 역사 ”는 리포지토리의 커밋 기록을 수정하는 기능을 나타냅니다. 여기에는 커밋 메시지 수정, 커밋 재정렬 또는 결합, 심지어 커밋을 모두 제거하는 등 기존 커밋을 변경하거나 변경하는 작업이 포함됩니다. Git은 다음과 같이 기록을 다시 작성하기 위한 다양한 명령과 기술을 제공합니다.



이러한 명령을 사용하면 커밋 메시지를 수정하고, 커밋을 재정렬하고, 다른 분기의 변경 사항을 통합하거나 전체 커밋 기록을 다시 작성할 수도 있습니다.



'git commit –amend' 명령을 사용하여 기록을 다시 작성하는 방법은 무엇입니까?

'git commit' 명령과 '–amend' 옵션을 사용하여 기록을 다시 작성하려면 다음 단계를 따르십시오.





  • 명시된 Git 디렉토리로 이동합니다.
  • '를 실행하여 로그 기록을 봅니다. 자식 로그 ' 명령.
  • '를 실행하여 커밋 기록을 다시 작성하십시오. 자식 커밋 ' 명령을 ' -개정하다 ' 옵션.

1단계: 로컬 Git 디렉토리로 이동

처음에 '와 함께 원하는 Git 리포지토리의 경로를 지정합니다. CD ” 명령을 입력하고 이동합니다.



CD 'C:\사용자\사용자\깃 \N itRepo'

2단계: Git 로그 보기

Git 로그 기록을 보려면 ' 자식 로그 ' 명령을 ' -한 줄 ' 옵션. 각 커밋을 한 줄에 표시합니다.

자식 로그 --온라인

3단계: 기록 다시 쓰기

'를 실행 자식 커밋 – 수정 ' 명령과 함께 '- ” 가장 최근 커밋 메시지를 다시 작성하는 옵션:

자식 커밋 --개정하다 -중 '기록 수정'

아래 이미지는 커밋 기록이 성공적으로 수정되었음을 나타냅니다.

4단계: 확인

확인을 위해 아래 명시된 명령을 사용하여 업데이트된 커밋을 봅니다.

자식 로그 --온라인

가장 최근 커밋이 성공적으로 업데이트되었음을 ​​확인할 수 있습니다.

'git rebase -i' 명령을 사용하여 기록을 다시 작성하는 방법은 무엇입니까?

'를 사용하여 기록을 다시 작성하려면 자식 리베이스 -i ” 명령을 실행하려면 주어진 단계를 따르십시오.

  • Git 로그 기록을 봅니다.
  • '를 사용하여 단일 커밋의 모든 커밋을 병합하여 기록을 다시 작성 자식 rebase 나 ' 명령.

1단계: Git 로그 보기

제공된 명령을 실행하여 현재 작업 저장소의 로그 기록을 확인합니다.

자식 로그 --온라인

제공된 출력은 모든 커밋이 성공적으로 나열되었음을 보여줍니다.

2단계: 커밋 기록 재작성

'를 실행 자식 리베이스 ' 명령과 함께 ' -나 ” 옵션을 대화식 모드로 설정하고 “ 머리 ” 당신의 선택에 따라 커밋을 선택합니다:

자식 리베이스 -나 헤드~ 4

결과적으로 기본 편집기가 화면에 나타납니다.

이제 ' 선택하다 ”키워드에 “ 스쿼시 ” 단일 커밋의 모든 커밋을 병합하여 기록을 다시 작성하려면:

아래 출력은 모든 커밋이 단일 커밋 HASH에 병합되었음을 나타냅니다.

3단계: 재작성 기록 확인

'를 실행하여 변경 사항을 확인합니다. 자식 로그 ' 명령과 함께 ' -한 줄 ” 각 커밋을 한 줄에 나열하는 옵션:

자식 로그 --온라인

선택한 커밋이 성공적으로 병합되었음을 알 수 있습니다.

Git의 다른 도구를 사용하여 기록을 다시 작성하는 가장 쉬운 방법을 제공했습니다.

결론

Git의 재작성 기록 도구는 저장소의 커밋 기록을 수정합니다. 여기에는 커밋 메시지 수정, 커밋 재정렬 또는 결합과 같은 기존 커밋 변경이 포함됩니다. Git은 “ 자식 커밋 – 수정 ' 그리고 ' 자식 리베이스 '.