소개
이 랩에서는 Git stash 가 비어 있는지 확인하는 방법을 배우게 됩니다. stash 의 내용을 검사하고 확인하는 다양한 방법을 살펴볼 것입니다.
먼저 git stash show 명령을 사용하여 stash 내의 변경 사항을 검사합니다. 여기에는 요약 및 자세한 diff 보기가 포함됩니다. 그런 다음, git stash list를 사용하여 stash 의 존재 여부와 내용을 확인하는 방법을 배우게 됩니다. 마지막으로, 이러한 명령을 비어 있지 않은 stash 로 테스트하여 이해도를 높일 것입니다.
git stash show 실행하여 검사
이 단계에서는 git stash show 명령을 사용하여 Git stash 에 저장된 변경 사항을 검사하는 방법을 배우겠습니다.
stash 를 검사하기 전에 stash 가 있어야 합니다. 간단한 파일을 만들고 변경 사항을 stash 해 보겠습니다.
먼저, 프로젝트 디렉토리에 있는지 확인합니다.
cd ~/project/my-time-machine
이제 notes.txt라는 새 파일을 만들고 내용을 추가합니다.
echo "Important notes for the future." > notes.txt
새 파일을 확인하기 위해 상태를 확인합니다.
git status
추적되지 않은 파일로 notes.txt가 나열되어야 합니다.
이제 이러한 변경 사항을 stash 해 보겠습니다. 이렇게 하면 변경 사항을 커밋하지 않고 저장하고 작업 디렉토리를 정리합니다.
git stash save "Add important notes"
변경 사항이 저장되었고 작업 디렉토리가 정리되었다는 출력을 볼 수 있습니다.
이제 stash 가 있으므로 git stash show를 사용하여 내용을 검사할 수 있습니다. 기본적으로 git stash show는 가장 최근 stash 의 변경 사항 요약을 표시합니다.
명령을 실행합니다.
git stash show
다음과 유사한 출력을 볼 수 있습니다.
notes.txt | 1 +
1 file changed, 1 insertion(+)
이 출력은 하나의 파일 (notes.txt) 이 변경되었고 한 줄이 추가되었음을 알려줍니다.
실제 내용 변경 사항 (diff) 을 보려면 -p 또는 --patch 옵션을 추가할 수 있습니다.
git stash show -p
이렇게 하면 git diff가 작동하는 방식과 유사하게 stash 의 변경 사항 diff 가 표시됩니다. 다음과 같은 내용을 볼 수 있습니다.
diff --git a/notes.txt b/notes.txt
new file mode 100644
index 0000000..a1b2c3d
--- /dev/null
+++ b/notes.txt
@@ -0,0 +1 @@
+Important notes for the future.
이 출력은 새 파일 notes.txt가 생성되었고 "Important notes for the future."라는 줄이 추가되었음을 보여줍니다.
git stash show 명령은 stash 를 적용하지 않고도 stash 내에 어떤 변경 사항이 포함되어 있는지 빠르게 확인하는 데 매우 유용합니다. 이를 통해 나중에 적용하거나 삭제할 stash 를 결정하는 데 도움이 됩니다.
git stash list 를 사용하여 확인
이 단계에서는 git stash list 명령을 사용하여 생성한 모든 stash 목록을 보는 방법을 배우겠습니다. 이는 여러 stash 가 있고 각 stash 에 무엇이 포함되어 있는지 기억해야 할 때 유용합니다.
프로젝트 디렉토리에 있는지 확인합니다.
cd ~/project/my-time-machine
이전 단계에서 하나의 stash 를 만들었습니다. git stash list를 사용하여 확인해 보겠습니다.
명령을 실행합니다.
git stash list
다음과 유사한 출력을 볼 수 있습니다.
stash@{0}: On master: Add important notes
이 출력을 자세히 살펴보겠습니다.
stash@{0}: 이것은 stash 의 이름입니다.stash는 stash 임을 나타내고,{0}은 목록에서 stash 의 인덱스입니다. 가장 최근 stash 는 항상 인덱스{0}에 있습니다.On master: stash 를 만들 때 어떤 브랜치에 있었는지 알려줍니다.Add important notes: 이것은git stash save를 사용하여 stash 를 만들 때 제공한 메시지입니다. 메시지를 제공하지 않으면 Git 은 현재 커밋과 변경된 파일을 기반으로 자동으로 메시지를 생성합니다.
여러 stash 가 있는 경우 stash@{0}, stash@{1}, stash@{2} 등과 같이 증가하는 인덱스로 나열됩니다.
목록이 어떻게 변경되는지 확인하기 위해 다른 stash 를 만들어 보겠습니다.
먼저, 이전 랩에서 만든 message.txt 파일을 수정합니다.
echo "Adding another line for testing." >> message.txt
이제 이러한 새로운 변경 사항을 stash 합니다.
git stash save "Add another line to message"
git stash list를 다시 실행합니다.
git stash list
이제 두 개의 stash 가 표시됩니다.
stash@{0}: On master: Add another line to message
stash@{1}: On master: Add important notes
새 stash 가 이제 인덱스 {0}에 있고 이전 stash 가 인덱스 {1}로 이동했음을 알 수 있습니다. Git 은 항상 가장 최근 stash 를 인덱스 {0}으로 목록 맨 위에 배치합니다.
git stash list 명령은 여러 stash 를 관리하는 데 필수적입니다. 저장된 작업에 대한 명확한 개요를 제공하여 적용하거나 삭제해야 할 때 특정 stash 를 식별하고 참조할 수 있습니다.
비어있지 않은 Stash 테스트
이 단계에서는 이해를 강화하기 위해 여러 stash 를 사용하여 git stash show 및 git stash list를 연습합니다.
프로젝트 디렉토리에 있는지 확인합니다.
cd ~/project/my-time-machine
현재 두 개의 stash 가 있습니다. 기억을 되살리기 위해 다시 목록을 확인해 보겠습니다.
git stash list
다음과 같은 내용이 표시됩니다.
stash@{0}: On master: Add another line to message
stash@{1}: On master: Add important notes
이제 첫 번째 stash(stash@{0}) 의 내용을 검사해 보겠습니다. 명령에 인덱스를 추가하여 표시할 stash 를 지정할 수 있습니다.
git stash show stash@{0}
이렇게 하면 message.txt에 줄을 추가한 가장 최근 stash 의 변경 사항 요약이 표시됩니다. 출력은 다음과 유사해야 합니다.
message.txt | 1 +
1 file changed, 1 insertion(+)
이 stash 의 diff 를 보려면 -p 옵션을 사용합니다.
git stash show -p stash@{0}
message.txt에 추가된 줄을 보여주는 diff 가 표시됩니다.
이제 두 번째 stash(stash@{1}) 를 검사해 보겠습니다. 이것은 notes.txt 파일을 만든 stash 입니다.
git stash show stash@{1}
출력은 다음과 유사해야 합니다.
notes.txt | 1 +
1 file changed, 1 insertion(+)
그리고 이 stash 의 diff 를 보려면:
git stash show -p stash@{1}
이렇게 하면 notes.txt 생성에 대한 diff 가 표시됩니다.
여러 변경 사항 집합을 저장한 경우 개별 stash 를 나열하고 검사할 수 있는 기능이 중요합니다. 이를 통해 하나씩 적용하지 않고도 필요한 stash 를 빠르게 식별할 수 있습니다.
다음 랩에서는 이러한 stash 를 적용하고 관리하는 방법을 배우겠습니다.
요약
이 랩에서는 git stash show 명령을 사용하여 Git stash 의 내용을 검사하는 방법을 배웠습니다. 먼저 간단한 파일을 만들고 변경 사항을 stash 하여 작업할 stash 를 만들었습니다. 그런 다음 git stash show를 사용하여 가장 최근 stash 의 변경 사항 요약을 확인했습니다. 여기에는 변경된 파일 수와 추가/삭제된 줄 수가 포함됩니다. 또한 git stash show와 함께 -p 또는 --patch 옵션을 사용하여 stash 내의 변경 사항에 대한 실제 diff 를 확인하여 추가, 수정 또는 삭제된 특정 줄을 볼 수 있었습니다. 이 명령은 stash 를 적용하지 않고도 stash 의 내용을 빠르게 이해하는 데 유용한 도구입니다.



