21.08.10 TIL

Ryan Kim·2021년 8월 9일
0
post-thumbnail

책 '지옥에서 온 문서 관리자 깃&깃허브 입문' 읽고 정리

  • git log 뒤에 --stat을 붙이면 log화면에서 각각의 해당 커밋에 관련된 파일들까지 볼 수 있다.
  • git checkout은 git switch와 git restore로 새버젼에서 대체되었다. 참조
$ git switch <브랜치명> #해당 브랜치로 변경#
$ git restore <파일명> #워킹 트리의 해당 파일을 복원(수정하기 전으로)#
$ git restore --staged <파일명> #이미 스테이징한 변경사항을 되돌리기#
  • 최신 커밋을 되돌리려면 git reset 명령 다음에 HEAD^(현재 HEAD가 가리키는 브랜치의 최신 커밋)를 붙인다.
    이렇게 되면 커밋도 취소되고 스테이지에서도 내려져, 취소한 파일이 작업 트리에만 남는다.
$ git reset HEAD^ #가장 최근에 커밋한 내용 다시 되돌리기#
  • git reset 명령의 옵션 살펴보기
--soft HEAD^ #최근 커밋을 하기 전 상태로 작업 트리를 되돌리기#
--mixed HEAD^ #최근 커밋과 스테이징을 하기 전 상태로 작업 트리를 되돌리기/ 옵션 없이 git reset 명령을 사용할 경우 이 옵션이 기본값#
--hard HEAD^ #최근 커밋과 스테이징, 파일 수정을 하기 전 상태로 작업 트리를 되돌리기/ 되돌린 내용 복구불가#
  • git reset은 선택한 커밋 해시 이후의 커밋들이 전부 삭제되므로, 커밋을 삭제하지 않고 변경사항을 되돌릴 경우 git revert를 사용한다.
git revert <커밋 해시> #되돌릴 커밋 해시값을 붙여넣기 한다.#
  • 스테이징한 내용을 취소하고 싶은 경우에는 (구버젼)git reset HEAD <파일명> 또는 (최신)git restore --staged <파일명> 입력./ git reset HEAD 뒤에 파일명 미입력시 스테이징한 모든 파일을 되돌린다.
#둘 다 같은 기능: 해당 파일 스테이징 취소#
#git reset HEAD <파일명>은 스테이징 되돌리기/ git reset HEAD^는 커밋 되돌리기 이므로 헷갈리지 말기!#
$ git reset HEAD <파일명>
$ git restore --staged <파일명>
profile
블로그 이사갔어요~ https://ryan-kim-dev.tistory.com/

0개의 댓글