git stash

JeongChaeJin·2021년 2월 3일
0

Git

목록 보기
10/14
post-custom-banner
  • 브랜치의 작업을 다 마치지 못한 상태에서 다른 브랜치의 작업을 해야하는 경우가 있을 수 있다.
  • commit 하기도 애매한 상황이고, commit 하지 못하면 checkout 을 못하기 때문에 브랜치를 활발히 사용하는 경우 이 명령어가 유용할 수 있다.

git stash

  • test1 branch 에서 file1.txt 를 수정했다.
  • commit 하지 않고 master branch 로 checkout 한다면 그대로 수정된 내용이 끌고 가지는데, 이는 master branch에 영향을 미치는 상황이 될 수 있다. (직접해보셈..)
  • commit 하기 애매하고, 이 때문에 checkout 이 어려운 상황 !
  • 작업한 내용을 stash 를 통해 감출 수 있다.

git stash

  • test1 브랜치 working directory 와 인덱스 작업중이던 변경 사항들이 save 되었다.

git status

  • 브랜치의 변경 내용이 안나온다. checkout 가능
  • 다시 감춰놨던 내용을 복원 하려면

git stash apply

  • 감춰놨던 내용이 다시 살아나는 것을 확인 할 수 있다.

git stash list

  • 감춰놨던 내용 list 로 확인 가능
  • 예를들어 reset --hard 로 초기 버전으로 넘어갔다가 다시 stash 를 통해 저장되어있던 버전을 불러 올 수 있다 !
    • 명시적으로 stash 내용을 삭제하지 않으면 기록이 남아있음.
  • 여러 stash 를 저장할 수 있음.
    • list 위(최신) -> 아래(과거) 순서임

git stash drop

  • 최신 stash 삭제

git stash apply; stash drop

  • 귀찮으면 동시에

  • 주의 사항

    • git stash 라고 하는 것은 최소한 버전관리를 하고 있는 파일에 대해서만 적용된다.
    • git add 한 파일 ! 즉, Tracked 파일만 저장하기 가능
profile
OnePunchLotto
post-custom-banner

0개의 댓글