Git 리베이스 - Git 14일

3812 단어 14daysofgitgitdevops
Git에 대한 학습 여정의 11일차입니다. 지금까지 저의 학습 여정은 다음과 같은 길로 저를 인도했습니다.
  • What is version control?
  • What is Git?
  • Installing Git
  • Basic Git commands to get started
  • Inspect a Git repository
  • Git File Operations
  • Undoing commits and changes
  • Rewriting history
  • Git Branches
  • Merging with Git

  • 이 배움의 여정에 저와 함께 하시겠습니까? 당신이 어떻게 지내는지 듣고 싶습니다.

    오늘의 학습 목표는 Git 리베이스가 무엇인지, 왜 사용하는지에 관한 것입니다.

    Git 리베이스란 무엇입니까?



    Git 리포지토리를 리베이스하면 기록이 다시 작성됩니다. 유해한 명령어일 수 있으니 사용시 주의하셔야 합니다.

    일반적으로 다음 이유 중 하나로 git rebase 명령을 사용합니다.
  • 이전 커밋 메시지 편집
  • 여러 커밋을 하나로 결합
  • 더 이상 필요하지 않은 커밋 삭제 또는 되돌리기

  • Git 리베이스가 필요한 이유는 무엇입니까?



    리베이스는 프로젝트의 히스토리를 다시 작성합니다. 훨씬 깔끔한 프로젝트 기록을 제공합니다. 리베이스는 git merge에 필요한 불필요한 병합 커밋을 제거합니다. 로그를 다시 볼 때 많은 선형 기록을 제공합니다.

    Git 리포지토리 리베이스



    메인 브랜치와 기능 브랜치가 있는 리포지토리가 있습니다. 우리는 이 기능 분기에서 다양한 작업을 수행했으며 몇 가지 커밋이 있습니다. 우리가 이것의 그래프를 본다면, 이것의 선을 따라 뭔가 보일 것입니다.



    우리는 기능 분기에서 만든 모든 커밋과 멋진 새 기능을 기본 분기로 가져오고 싶습니다. 그러나 우리는 역사를 가능한 한 선형으로 만들고 싶습니다. 따라서 git merge를 수행하는 대신 git rebase를 사용할 것입니다.

    사용하려는 명령은 다음과 같습니다.

    git checkout main
    git rebase featurebranch
    


    첫 번째 명령은 우리가 메인 브랜치에 있는지 확인하고 두 번째 명령은 기능의 커밋을 포함하도록 해당 메인 브랜치를 리베이스합니다.

    git 그래프 로그는 다음과 같습니다.



    우리의 히스토리가 선형 방식으로 메인 브랜치로 리베이스된 것을 볼 수 있습니다.

    대신 git merge 명령을 사용했다면 저장소 기록은 다음과 같습니다.



    git rebase 명령을 사용하면 특히 다양한 기능과 버그에 대해 작업하는 대규모 개발자 팀이 있는 경우 훨씬 더 명확한 기록을 얻을 수 있습니다. git merge만 사용하는 경우 실제 메시지가 될 수 있습니다. 역사는 정말 읽고 이해하기 어려워집니다.

    Git rebase는 기록을 다시 작성하므로 항상 올바른 옵션은 아닙니다. git merge보다 git rebase의 올바른 사용 사례를 이해하고 적절하게 사용하는 것이 팀으로서 중요합니다.

    Git 14일



    솔직히 말해서, 이것이 무엇을 위한 것인지 이해하고 정말 감사하는 데 약간의 시간이 걸렸습니다. 나는 아직도 이것에 대해 더 파헤칠 수 있다고 생각합니다. 내가 다시 돌아와서 더 많은 학습을 할 수 있도록 확실히 예약 표시를 합니다.

    내일은 보관에 관한 모든 것이므로 흥미로울 것입니다! subscribe 학습 여정의 그 단계에 저와 함께 하십시오!

    여기에서 따라할 수 있습니다: https://github.com/weeyin83/14daysofgit

    좋은 웹페이지 즐겨찾기