Git Interactive Rebase 소개

Git Interactive Rebase Sogae



대화형 리베이스는 다양한 개발자가 동일한 코드베이스에서 수행하는 공동 작업에서 특히 유용할 수 있습니다. 풀 요청을 제출하기 전에 커밋 기록을 정리할 수 있으므로 다른 사람들이 변경 사항을 검토하고 사고 과정을 이해하기가 더 쉽습니다.

이 게시물은 Git 대화형 리베이스에 대한 소개를 간략하게 설명합니다.

Git Interactive Rebase 소개

Git Interactive rebase는 Git 리포지토리에서 커밋을 관리하기 위한 강력한 도구입니다. 개발자/사용자가 분기 기록에서 커밋을 수정, 재정렬 또는 제거할 수 있습니다. 대화형 리베이스는 개발자가 다른 브랜치에 병합하기 전에 브랜치를 정리해야 하거나 이전 커밋을 변경하려는 경우에 특히 유용합니다.







Git Interactive Rebase는 어떻게 작동합니까?

Git 대화형 리베이스로 작업을 시작하기 위해 사용자는 아래 나열된 여러 변경 사항을 수행할 수 있습니다.



커밋 재정렬

커밋을 재정렬하려면 아래 설명된 절차를 시도하십시오.



  • 로컬 Git 리포지토리로 이동합니다.
  • 힘내 로그를 확인하십시오.
  • 커밋 순서를 수동으로 변경하고 변경 사항을 확인합니다.

1단계: 로컬 리포지토리로 이동

처음에는 '를 사용하여 경로를 지정하여 로컬 Git 리포지토리로 이동합니다. CD ' 명령:





CD 'C:\사용자\사용자\깃 \티 에스팅프로젝트'

2단계: Git 로그 확인

'의 도움으로 전체 Git 로그를 봅니다. 자식 로그 – 온라인 '. 각 커밋을 한 줄에 표시합니다.

자식 로그 --온라인

결과적으로 모든 커밋이 Git Bash 터미널에 표시됩니다.



3단계: 커밋 재정렬

이제 '를 실행하십시오. 자식 리베이스 -i ” 명령 여기서 “ -나 ”는 인터랙티브 모드로 활용되며, “ 헤드~3 ”는 Git 로그에서 세 개의 커밋을 선택합니다.

자식 리베이스 -나 헤드~

결과 이미지는 열린 편집기에서 모든 커밋의 위치를 ​​대체하는 것을 보여줍니다.

아래 이미지는 커밋이 서로 수동으로 대체되었음을 보여줍니다.

마지막으로 커밋은 “ 자식 리베이스 -i '.

4단계: 변경 사항 확인

주어진 명령을 실행하여 변경 사항을 확인합니다.

자식 로그 --온라인

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

합병 약정

두 개 이상의 커밋을 병합하려면 주어진 지침을 따르십시오.

  • Git 로그를 봅니다.
  • '를 활용 git rebase -i HEAD~3 ” 명령을 사용하여 커밋을 단일 커밋으로 병합합니다.
  • 교체 ' 선택하다 ”키워드에 “ 스쿼시 병합합니다.

1단계: Git 로그 확인

먼저 아래 제공된 명령을 실행하여 Git 로그의 전체 기록을 봅니다.

자식 로그 --온라인

명시된 이미지는 위 명령의 결과를 표시했습니다.

2단계: 커밋 병합

이제 '를 사용하여 커밋을 병합합니다. 자식 리베이스 -i ' 명령. “ 헤드~3 ”는 세 개의 커밋을 선택하고 지정된 편집기를 여는 데 사용됩니다.

자식 리베이스 -나 헤드~

결과적으로 편집기가 열렸습니다.

2단계: 'pick'을 'squash'로 바꾸기

교체 ' 선택하다 ”가 포함된 단어 스쿼시 ” 첫 번째 커밋을 병합하고 변경 사항을 저장하는 데 사용됩니다.

3단계: 변경 사항 커밋

그러면 새 편집기가 화면에 나타납니다. 여기에서 변경 사항을 커밋하고 ' Ctrl+s ”:

모든 변경 사항이 성공적으로 커밋되었음을 알 수 있습니다.

4단계: 확인

언급된 명령을 사용하여 위에서 커밋된 변경 사항을 확인합니다.

자식 로그 --온라인

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

커밋 제거

Git 로그 기록에서 커밋을 제거하려면 아래 언급된 단계를 시도하십시오.

  • Git 로그 기록 보기.
  • 편집기에서 커밋을 수동으로 제거합니다.
  • Git 로그 기록을 확인하여 확인합니다.

1단계: Git 로그 기록 확인

주어진 명령을 실행하여 Git 로그를 확인하십시오. “ 자식 로그 – 온라인 ” 명령은 각 커밋을 한 줄에 표시하는 데 사용됩니다.

자식 로그 --온라인

제공된 이미지는 전체 Git 로그 기록을 보여줍니다.

2단계: 커밋 제거

'를 적용하여 편집기를 엽니다. 자식 리베이스 -i ' 명령과 함께 ' 헤드~2 ” 로그 기록에서 두 개의 커밋을 선택합니다.

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

커밋을 선택하고 편집기에서 수동으로 제거합니다.

여기에서 편집기에서 선택한 커밋을 제거하고 ' Ctrl+s ” 변경 사항을 저장하는 키:

결과 이미지는 rebase 작업이 성공적으로 수행되었음을 나타냅니다.

3단계: 확인

확인을 위해 아래 명령을 실행합니다.

자식 로그 --온라인

선택한 커밋이 로그 기록에서 성공적으로 제거되었습니다.

Git 대화식 리베이스에 관한 모든 것입니다.

결론

Git Interactive rebase는 Git 리포지토리에서 커밋을 관리하기 위한 가장 강력한 작업입니다. 개발자/사용자가 ' 자식 리베이스 -i ' 명령. 또한 모든 커밋을 하나로 병합하여 Git 기록을 정리하는 데 사용할 수도 있습니다. 이 게시물은 Git 대화형 리베이스에 대한 소개를 명시했습니다.