전제조건: 힘내
Git을 사용하면 여러 사용자가 동일한 프로젝트에서 동시에 작업할 수 있습니다. 개발자가 브랜치의 기능을 작업 중이고 다른 개발자의 브랜치에서 변경 사항을 가져와야 하거나 다른 기능에 대해 긴급하게 작업해야 하는데 현재 작업 중인 기능이 불완전하다고 가정해 보세요. 이 경우 현재 작동 중인 기능의 부분 코드를 커밋할 수 없습니다. 이 새로운 기능을 추가하려면 현재 변경 사항을 제거하고 다른 곳에 저장해야 합니다. 이러한 유형의 상황에 대해 Git은 '라는 매우 유용한 명령을 제공합니다. 자식 숨김 '. 자식 숨김 명령은 이전에 작성된 코드를 저장한 다음 새로 시작하기 위해 마지막 커밋으로 돌아갑니다. 이제 로컬에 저장되므로 이전 기능을 방해하지 않고 새 기능을 추가할 수 있습니다. 새 기능을 커밋한 후에는 불완전하고 커밋되지 않은 이전 기능에 대한 작업을 계속할 수 있습니다.
Git 숨김과 Git 커밋
git 저장소에 변경 사항을 저장하는 방법에는 stash와 commit이라는 두 가지 방법이 있습니다.
힘내 숨김: 개발자가 프로젝트 작업 중이고 변경 사항을 커밋하지 않고 보존하려는 경우 Git stash 명령을 사용하여 이를 수행할 수 있습니다. 이를 통해 그는 기존 수정 사항에 영향을 주지 않고 분기를 전환하고 다른 프로젝트에서 작업할 수 있습니다. 필요할 때마다 수정 사항을 롤백할 수 있으며, 현재 상태를 저장하고 개발자를 이전 상태로 롤백합니다.
Git 커밋: 개발자는 소스 코드에 대한 변경 사항을 저장소 기록에 영구적으로 저장하기를 원합니다. 그만큼 자식 커밋 이를 수행하기 위해 명령을 사용할 수 있습니다. Git은 수정 사항을 문서화하고 이를 저장소 기록에 추가하는 새로운 커밋을 생성합니다.
요약하자면. Git 커밋은 저장소 기록에 대한 변경 사항을 영구적으로 저장하는 반면 Git stash는 작업 중이지만 아직 커밋할 준비가 되지 않은 파일의 백업을 수행하는 데 사용됩니다.
Git Stash와 Git 재설정
두 명령을 결합하여 Git 저장소의 변경 사항을 관리할 수 있으며 다양한 사용 사례가 있습니다.
Git 재설정 및 Git stash 이 두 명령을 사용하면 이전에 삭제하고 백업한 모든 파일을 현재 작업 디렉터리로 복원할 수 있습니다. 이 두 가지 주요 차이점은 다음과 같습니다.
Git Stash | 힘내 재설정 |
---|---|
Git stash는 수정되었지만 아직 커밋할 준비가 되지 않은 파일을 저장하는 데 사용됩니다. | Git 재설정은 변경 사항을 완전히 취소하고 분기 포인터를 새 커밋으로 변경할 수 있습니다. |
개발자는 현재 변경 사항에 영향을 주지 않고 분기를 전환하고 다른 작업을 수행할 수 있습니다. | 이미 변경된 내용은 Git 재설정으로 인해 삭제됩니다. |
Git Stash와 Git Stage
Staging은 후속 커밋을 위해 변경 사항을 준비하는 데 사용되는 반면, Git stash는 수정되었지만 아직 커밋할 준비가 되지 않은 파일의 백업을 만드는 데 사용됩니다. 두 명령을 결합하여 Git 저장소의 변경 사항을 관리할 수 있으며 다양한 사용 사례가 있습니다.
Git Stash | Git 스테이지 |
---|---|
Git stash는 파일을 백업하는 데 사용됩니다. | git 단계를 사용하여 파일이 git 인덱스에 추가됩니다. |
Git stash는 기능이나 버그 수정 작업 중에 다른 작업이나 분기로 전환해야 하는 경우에 사용됩니다. | Git 단계 수정 사항은 git add 명령을 사용할 때 후속 커밋에 포함됩니다. |
Git Stash 기록을 저장하는 폴더는 무엇입니까?
git stash를 사용하면 데이터가 로컬 저장소에 stash 형식으로 저장됩니다. 기본적으로 데이터는 git/refs/stash 파일에 저장됩니다. 이 파일에는 모든 참조가 저장되며 실제 데이터는 다른 Git 개체와 마찬가지로 .git/objects 디렉터리에 저장됩니다.
단어의 워터마크
아래 명령은 생성된 모든 숨김 목록을 나열하는 데 사용됩니다.
git stash list>
Git에서 변경 사항을 어떻게 숨기나요?
나중에 사용할 수 있도록 커밋되지 않은 변경 사항을 저장하려면 다음을 사용할 수 있습니다. 'git stash' 명령. 이 명령은 로컬 수정 사항을 저장하고 HEAD 커밋과 일치하도록 작업 디렉터리를 되돌려 깨끗한 작업 디렉터리를 제공합니다.
가장 널리 사용되는 몇 가지 중요한 옵션은 다음과 같습니다.
- Git stash Git stash 저장 Git stash 목록 Git stash 적용 Git stash 변경 사항 Git stash pop Git stash drop Git stash 지우기 Git stash 분기
작업 저장(Git Stash)
git stash>

기본적으로 실행 중 자식 숨김 인덱스에 추가된 변경 사항(단계적 변경)과 현재 Git에서 추적 중인 파일에 대한 변경 사항(비단계적 변경)을 숨깁니다. 추적되지 않은 파일을 숨기려면 다음을 사용하세요. git stash -u .
여러 Stash 관리(Git Stash List)
여러 개의 숨김을 생성하고 다음을 사용하여 볼 수 있습니다. 'git 숨김 목록' 명령. 각 숨김 항목은 해당 이름과 함께 나열됩니다(예: 숨김@{1} ), 항목이 작성되었을 때 현재 있었던 브랜치의 이름, 항목의 기반이 된 커밋에 대한 간단한 설명입니다.
git stash list>

숨김에 더 많은 컨텍스트를 제공하기 위해 다음 명령을 사용하여 숨김을 만듭니다.
git stash save 'message'>
Git Stash Apply 및 POP(Git Stash Apply & POP)이란 무엇입니까?
다음을 사용하여 이전에 숨겨둔 변경 사항을 다시 적용할 수 있습니다. '깃 스태쉬 팝' 또는 'git stash 적용' 명령. 두 명령의 유일한 차이점은 '깃 스태쉬 팝' 스태시에서 변경 사항을 제거하고 작업 복사본에 변경 사항을 다시 적용합니다. 'git stash 적용' 스태시에서 변경 사항을 제거하지 않고 작업 복사본의 변경 사항만 다시 적용합니다. 간단히 말해서, 팝 동안 숨김 목록에서 상태를 제거합니다. 적용하다 숨김 목록에서 상태를 제거하지 않습니다. 후속 명령을 사용하면 저장된 변경 사항을 다시 적용할 수 있습니다. 최신 스태시는 작업 디렉터리에 적용되며 스태시 목록에서도 가져옵니다.
git stash pop>

git stash apply>

기본적으로 '깃 스태쉬 팝' 또는 'git stash 적용' 가장 최근에 생성된 숨김을 다시 적용합니다: stash@{0} 적용할 숨김을 선택하려면 식별자를 마지막 인수( 예를 들어. :- git stash pop stash@{2}).
Git 스태시 쇼
자식 숨김 쇼 명령은 숨김에서 수행된 작업 요약을 표시하는 데 사용됩니다.
git stash show>

Stash에서 브랜치 생성(Git Stash Branch)
스태쉬가 원래 생성된 커밋에서 시작하여 새 브랜치를 생성 및 체크아웃하고 스태시에 저장된 변경 사항을 적용하려면 다음을 사용하세요. 'git stash 브랜치 Branch_name stash_name' . 인수로 제공된 숨김을 삭제하고, 숨김이 제공되지 않으면 최신 항목을 삭제합니다.
git stash branch newbranch stash@{0}>

보관함 정리(Git Stash Clear)
특정 숨김을 삭제하려면( 예를 들어: – stash@{1}), 사용 'git stash drop stash@{1}' . 기본적으로 이 명령은 삭제됩니다. 숨김@{0} 인수가 제공되지 않은 경우( 자식 숨김 드롭 ). 모든 숨김을 한 번에 삭제하려면 다음을 사용하십시오. 'git stash 클리어' 명령.

git stash 명령을 사용하면 커밋되지 않은 수정 사항을 유지하여 나중에 필요에 따라 사용할 수 있습니다. git stash 명령을 사용하면 파일이 자동으로 백업됩니다. 이를 통해 분기를 전환하고, 집안일을 수행한 다음, 다시 작업할 준비가 되었을 때 파일을 쉽게 다시 가져올 수 있습니다.

추적되지 않거나 무시된 파일 보관
git stash 명령을 사용하여 추적되지 않거나 무시된 파일을 숨길 수 있습니다. 아래 단계에 따라 파일을 숨길 수 있습니다.
1 단계: 아래 명령을 사용하여 해당 변경 사항을 숨깁니다.
git stash save --include-untracked>
–include-untracked를 사용하면 추적되지 않은 모든 파일도 숨겨집니다.
2 단계: 숨김을 확인합니다.
아래 명령을 사용하여 숨김이 생성되었는지 확인하세요.
git stash list>
3단계: 다음 명령을 사용하여 다시 가져오고 숨김을 적용할 수 있습니다.
git stash apply stash@{0}>
4단계: 원치 않는 경우 숨김 가져오기가 완료되면 다음 명령을 사용하여 숨김을 삭제할 수 있습니다.
git stash drop stash@{0}>
Git Stash 모범 사례
다음은 힘내 숨김 명령.
- git stash를 과도하게 사용하지 마세요: Git stash는 다른 작업을 수행하는 것이 매우 중요할 때마다 적당히 사용해야 하며, git stash만 사용해야 커밋 시 변경 사항에 영향을 줍니다.
- 불필요한 메시지를 피하세요: git stash를 사용하면 숨기는 변경 사항을 설명하는 메시지를 추가할 수 있습니다. 메시지를 의미 있게 만드세요. 나중에 숨겨둔 내용을 기억해야 할 때 이 기능이 유용할 것입니다. 유익하고 연상적이며 숨겨진 변경 사항을 정확하게 반영하는 진술을 사용하십시오.
- 지점 고용: Stashing은 Git 브랜치로 작업할 때 유용한 도구입니다. 변경 사항을 저장하기 전에 현재 변경 사항에 영향을 주지 않고 다른 작업이나 분기로 전환할 수 있도록 새 분기를 만드세요. 한 번 더 수정 작업을 수행할 준비가 되면 브랜치로 돌아가서 스태시를 적용하세요.
- 변경은 가능한 한 빨리 이루어져야 합니다. 저장은 임시 해결책으로만 사용해야 합니다. 일련의 변경 사항을 완료한 후에는 해당 변경 사항을 저장소에 커밋하여 변경 사항 기록을 보존해야 합니다.