[git] commit과 stash

여리·2023년 3월 12일
0

Git stash와 Git commit은 모두 Git의 버전 관리 기능을 사용하여 변경 사항을 저장할 수 있는 방법론적인 부분에서 같다. 하지만 이 두 명령어에는 몇 가지 중요한 차이점이 있다. 바로 저장방식의 일시적인 임시저장영구저장의 기록 차이다.

git stash

git stash 명령은 현재 작업 중인 변경 사항을 일시적으로 저장하는 데 사용된다. 이 명령은 현재 작업 디렉토리의 변경 사항을 저장소에 커밋하지 않고, 대신 일시적으로 변경 사항을 스택에 저장한다. 이렇게하면 작업 디렉토리를 깨끗한 상태로 유지하면서 다른 브랜치로 이동하거나 다른 변경 사항을 가져올 수 있다. 나중에 변경 사항을 다시 가져와 원래 작업을 계속할 수 있다.

git stash 명령어는 세 가지 옵션과 함께 사용할 수 있다.

git stash save : 현재 작업 중인 변경 사항을 stash에 저장하고, 메시지를 추가한다.
git stash list: 저장된 stash 목록을 출력한다.
git stash apply : 저장된 stash 중에서 특정 stash를 선택하여 적용한다.
git stash를 사용하여 작업 중인 변경 사항을 일시적으로 저장할 수 있으므로, 다른 브랜치로 전환하여 작업할 때 유용하다. 또한, 여러분이 다른 작업을 수행해야 할 때 변경 사항을 저장하고, 나중에 다시 적용할 수 있다.

하지만!!!!!!!!
말그대로 stash는 임시저장의 성격이 강하기 때문에 조심해서 사용해야 한다!

git commit

git commit 명령은 변경 사항을 로컬 저장소에 저장한다. 이 명령은 변경 사항을 스택에 저장하지 않고 변경 사항을 로컬 저장소에 커밋한다. 커밋 메시지를 작성해야 하며 변경 사항이 저장소에 영구적으로 저장된다. 커밋은 버전의 스냅샷으로 생각할 수 있다. 나중에 변경 사항을 되돌릴 수 있고, 다른 작업 디렉토리에서 변경 사항을 복원할 수 있다.

따라서 git stash 명령은 변경 사항을 임시로 저장하고 싶을 때 사용되며, git commit 명령은 변경 사항을 영구적으로 저장하고 싶을 때 사용한다.

git commit은 추가링크로 참고해야지~
git commit flow

쉽게표현하면
commit은 기록을 남기고 재활용 할 수 있는거 !
stash는 기록을 남기지 않고 임시저장하는거 !

profile
beckend developer

0개의 댓글