Git에서 정리가 필요한 내용

오민영·2021년 7월 1일
0

Git

목록 보기
1/4
post-thumbnail

Git commit message 수정

바로 직전 커밋 메세지를 수정하고 싶을때

git rebase HEAD~1 -i
// 편집모드(i) 누른 뒤, pick -> reword로 수정하고 esc + :wq!
// 그럼 수정할 수 있도록 창이 뜨면 (E)dit 해서 커밋 메세지 수정하고 esc + :wq!
git push -f 

(나는 실행이 되지 않아서 다른 방법으로 수정했다.)

// 바로 전 커밋으로 돌아간다.
git reset HEAD~1
git add .
git commit -m "수정할 매세지 다시 입력"
git push **--force** origin dev-style

Cherry-pick

다른 브랜치에 있는 커밋을 선택적으로 내 브랜치에 적용시킬 때 사용하는 명령어이다.
git cherry-pick <commit-SHA>

Reset / Revert 차이점

reset

  • 과거의 특정 commit 시점으로 되돌아 갈 수는 있지만, 되돌린 버전 이후의 버전들은 히스토리에서 아예 삭제된다.
    git reset HEAD~1
  • 사용하는 경우
    - 혼자만 사용하는 브랜치인 경우 사용
    - origin에 있지만 아무도 이 브랜치를 사용하지 않는게 확실한 경우 사용

- revert

  • 특정 commit 으로 되돌아갈 수 있지만, 되돌린 버전 이후의 버전들의 히스토리는 여전히 남아있다.
  • reset과 다르게, 커밋을 삭제하는 것이 아니라! 커밋을 추가하는 것이다.
  • git revert <commit SHA>

Pull / Fetch

- pull

  • 원격 저장소로부터 필요한 파일을 pull 하고, merge까지 한다.
  • 로컬 브랜치와 원격 저장소가 같은 위치를 가리킨다!

- fetch

  • 원격 저장소로부터 필요한 파일을 pull 받는다. (merge는 따로 해야함)
  • 로컬 브랜치는 원래 가지고 있던 로컬 저장소의 최근 커밋 위치를 가리키고, 원격 저장소는 가져온 최식 커밋을 가리킨다.
  • 즉, 원래 내용과 바뀐 내용과의 차이를 알 수 있다.

Reference

참고
참고
참고

profile
이것저것 정리하는 공간

0개의 댓글