Git 숨김 특정 파일

Azhar Bashir Khan 2022년8월23일
Git 숨김 특정 파일

이 튜토리얼에서는 Git에서 특정 파일의 변경 사항만 숨김에 대해 설명합니다.

Git에서 작업 트리를 변경할 때 로컬 리포지토리에 준비되거나 아직 준비되지 않은 변경 사항이 있을 수 있습니다.

이제 이러한 변경 사항을 잠시 저장하고 이러한 변경 사항이 적용되기 전에 파일 버전에서 작업할 수 있습니다.

따라서 이러한 목적을 위해 git stash push 명령을 사용하여 나중에 사용할 수 있도록 변경 사항(즉)을 숨길 수 있습니다.

다시 말하지만, 우리는 git stash pop 명령을 사용하여 이러한 변경 사항을 다시 가져올 수 있습니다.

때때로 저장소의 작업 트리에서 변경된 모든 파일 대신 특정 파일에 대한 변경 사항을 저장하거나 숨길 필요가 있습니다.

이제 이를 예를 들어 설명하겠습니다.

git stash push를 사용하여 Git에서 특정 파일의 변경 사항 숨김

저장소의 작업 트리에 example.txt라는 파일이 있다고 가정합니다. 파일을 약간 변경했으며 이제 해당 변경 사항을 잠시 Git에 저장하려고 합니다.

작업 트리의 다른 파일에도 변경 사항이 있을 수 있지만 이를 숨기고 싶지는 않습니다.

Git에서 특정 파일을 숨기는 명령의 구문은 git stash push <file>입니다.

따라서 example.txt 파일에만 수행된 변경 사항을 숨기기 위해 다음과 같이 합니다.

$ git stash push example.txt
Saved working directory and index state On main: example.txt
HEAD is now at 8b3560b minor changes

따라서 example.txt 파일의 변경 사항만 숨겼습니다.

이제 다음과 같이 숨김 항목을 나열하고 숨김 항목을 볼 수 있습니다.

$ git stash list
stash@{0}: On main: example.txt

다음과 같이 숨길 때 특정 메시지를 추가할 수도 있습니다.

$ git stash push -m "my example stash" example.txt
Saved working directory and index state On main: my example stash example.txt
HEAD is now at 8b3560b minor changes

다음과 같이 다시 나열할 수 있습니다.

$ git stash list
stash@{0}: On main: my example stash example.txt

이 외에도 Git에서 원하는 파일의 특정 변경 사항을 대화식으로 숨길 수도 있습니다.

이를 위해 git stash push 명령과 함께 --patch 또는 -p 옵션을 사용해야 합니다.

따라서 이 예에서 이를 수행하려면 다음과 같이 하십시오.

$ git stash push --patch
diff --git a/example.txt
index 7ab5ca4..a281fc6 100644
--- a/example.txt	
+++ b/example.txt	
@@ -4,9 +4,11 @@
 
 some text
+new text
 
some other text
some text again
+second new text


Stash this hunk [y,n,q,a,d,/,s,e,?]? y

Saved working directory and index state WIP on main: 8b3560b minor changes

git stash 명령은 저장소의 작업 트리에서 모든 변경 사항을 반복하고 숨길 변경 사항을 선택하라는 메시지를 표시합니다.

여기서 질문 옆에 옵션 y를 입력했습니다. Stash this hunk [y,n,q,a,d,/,s,e,?]? 이렇게하여 example.txt 파일의 변경 사항을 stash합니다.

파일의 현재 hunk(변경 사항)를 숨기지 않으려면 n 옵션을 입력할 수 있습니다.

git stash 및 사용 가능한 옵션에 대한 자세한 내용은 이 사이트를 참조하십시오. git stash - 변경 사항 저장.

관련 문장 - Git Stash