ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Git] commit을 변경하는 git commands
    📖 개발 공부/git 2023. 5. 14. 22:32

    git commit —amend

    git commit 커맨드에 —amend 옵션을 붙이면 직전에 남긴 커밋 메시지를 수정할 수 있다.

    예를 들어 다음과 같이 오타를 포함한 커밋을 한다고 치자.

    git commit -m "feat: date_pickeㄱ 구현"

    이를 —amend 옵션을 통해 수정할 수 있다.

    다음과 같은 텍스트 에디터가 나오면, 커밋 메시지를 수정하면 된다.

    --amend 를 실행하면 commit id가 완전히 변하게 된다.

     

     

    git cherry-pick <commit_id>

    다음 명령어는 다른 브랜치에 있는 커밋을 선택적으로 현재 브랜치에 적용시킬 때 사용하는 커맨드이다.

    현재 branch에 붙는 commit은 새로운 commit id가 부여된다.

    https://www.scaler.com/topics/git/git-cherry-pick/

    -n flag를 추가하면 add만 수행하고 commit은 하지 않는다.

     

    git rebase

    git rebase 는 여러 commit 반영하는 커맨드이다.

    rebase를 통해 여러 commit을 하나로 합치거나, 특정 commit을 건너 뛸 수 있다.

    현재 branch와 대상 branch의 공통 조상부터 대상 branch의 마지막 commit까지 모든 commit을 순서대로 하나씩 가져와서 현재 branch에 덧붙인다.

    git rebase <대상 Branch 이름>
    

    병합을 하면 브랜치의 커밋 메시지가 시간 순서대로 합쳐진다. → 재정렬되는 commit은 이전과 다른 commit id가 부여된다.

    Rebase 명령에 -i(interactive) 옵션을 덧붙여 사용하면 Commit들의 순서를 바꾸고 첨삭하거나, 몇 개의 Commit을 하나로 합치는 등의 작업을 수행한 뒤 가져올 수 있다.

    이는 리베이시라고도 불린다.

    git rebase -i HEAD~3
    

    이 작업 이후 commit들 또한 모두 commit id가 바뀐다.

     

    git merge

    git merge는 여러 커밋 시퀀스를 하나의 통합된 기록으로 결합한다.(branch를 통합한다.)

    https://www.linkedin.com/pulse/understanding-difference-between-git-merge-rebase-which-garg-/

    반응형

    댓글

Designed by Tistory.