Stashing
- git statch 명령을 사용하여 아직 완료하지 않은 수정사항을 저장할 수 있습니다.
- 워킹 디렉토리에서 수정한 파일들만 저장합니다.
- Modified이면서 Tracked 상태인 파일과 Staging Area에 있는 파일들을 보관합니다.
- stash 영역으로 이동되기 때문에 checkout을 할 수 있습니다.
stash에 저장하기
-
$ git stash save "message"
stash 작업 확인
-
$ git stash list # 스택에 쌓여있는 모든 stash를 보여줍니다.
여러개의 stash
- 만약 여러 개의 stash가 있다면, git stash apply stash@{n}을 사용하여 특정 stash를 적용할 수 있습니다.
stash 작업 제거
-
$ git stash drop # 또는 $ git stash drop stash@{n}
stash 명령어 옵션
- --keep-index : Staging Area에 있는 변경 사항을 stash에 포함시키지 않습니다.
-
$ git stash --keep-index
- Staging Area에 있는 파일을 제외한 나머지 수정사항만을 stash에 저장합니다. 따라서 Staging Area에 있는 변경 사항은 현재 브랜치에 유지됩니다.
- --include-untracked 또는 -u : 추적되지 않은 파일도 함께 Stash에 저장합니다.
-
$ git stash -u
- 이 명령은 추적되지 않은 파일과 추적 중인 파일을 모두 Stash에 저장합니다.
- --patch : 수정된 파일 중 일부만 Stash에 저장할 수 있도록 대화형 패치 모드를 제공합니다.
-
$ git stash --patch
- 수정된 파일의 변경 내용 중 일부를 선택적으로 Stash에 저장할 수 있도록 하는 대화형 모드를 시작합니다. 변경 사항을 선택하고 stash를 생성할 수 있습니다.
statsh를 적용한 브랜치 만들기
-
$ git stash branch <새로운 브랜치 이름> <stash 이름>
- 여기서 <새로운 브랜치 이름>은 생성할 새로운 브랜치의 이름이며 <stash 이름>은 적용할 Stash의 이름입니다. 만약 <stash 이름>을 지정하지 않으면 가장 최근의 Stash가 자동으로 선택됩니다.
워킹 디렉토리 청소하기
- git clean 명령은 워킹 디렉토리를 정리하고 추적되지 않은 파일을 삭제하는 데 사용됩니다. 명령을 사용할 때는 주의가 필요하며 -n 옵션을 사용하여 어떤 파일이 지워질지 확인하는 것이 좋습니다.
- 추적되지 않은 모든 파일 삭제 (디렉토리 포함)
-
$ git clean -f -d # 이 명령은 -f 옵션을 통해 강제로 삭제하고, -d 옵션은 디렉토리까지 삭제합니다.
-
- 가상으로 실행하여 어떤 파일이 지워질지 확인하기
-
$ git clean -n -d # n 옵션은 가상으로 실행하라는 의미로 실제로는 파일을 지우지 않고 어떤 파일이 삭제될지 # 미리 확인할 수 있습니다.
-
- .gitignore에 명시된 무시된 파일까지 모두 삭제
-
$ git clean -f -d -x # -x 옵션은 무시된 파일까지 삭제하라는 의미입니다.
-
- 대화형 모드로 실행
-
$ git clean -x -i # -i 옵션은 대화형 모드로 실행하며, 파일별로 삭제 여부를 선택할 수 있습니다.
-
'GIT > Git 도구' 카테고리의 다른 글
[GIT] 히스토리 편집하기 (0) | 2024.03.18 |
---|---|
[GIT] 히스토리 검색하기 (0) | 2024.03.18 |
[GIT] 작업에 서명하기 (0) | 2024.03.18 |
[GIT] 대화형 명령 (0) | 2024.03.11 |
[GIT] 리비전 조회하기 (0) | 2024.03.11 |