1 - 몇 개의 은닉이 저장됩니까?
은신처는 공기 중에 나타나지 않습니다. 당신은
git stash
또는 동등
git stash save
그래서 얼마나 많은 저장됩니다를 사용하여, 그것들을 만드는 경우에만? 최대한 많이 만듭니다.
2 -이 은닉은 얼마나 오래 저장됩니까?
이 질문은 무죄로 보이지만 답변은 실제로 매우 미묘합니다. 여기서 고려해야 할 두 가지 측면이 있습니다. 1) stash reflog 및 2) 저장소의 객체 데이터베이스. 에 해당 하나
당신이 감춰을 만들
, 힘내
- 는 숨김 reflog에 항목, (당신이
--include-untracked
플래그를 사용하는 경우 세)
- 두 가지를 생성 저장소 데이터베이스의 객체를 저지를 추가 작업 트리의 WIP (진행중인 작업) 및 준비 영역 (일명 색인)의 상태에 해당하는 또 다른 작업입니다.
편집 : 해당 커밋 개체는 진품 커밋이며 확인하려면 git cat-file -t
을 실행하여 확인할 수 있습니다. 그들은 단지 어떤 지회에서나 도달 할 수 없다. torek's comment을 참조하십시오.
기본적으로 Git의 가비지 수집은 90 일이 넘은 reflog 항목을 자동으로 삭제합니다. 당신은, 힘내 자체에 숨겨 놨다는 삭제되지 않습니다 위에서 설명한 가비지 수집 메커니즘 이외의
git config gc.refs/stash.reflogexpire <lifetime>
을 실행하여, 숨김 reflog 항목에 대해 다른 "수명"을 지정할 수 있습니다; 감춰 사용하여, 한 당신이 그것을하지 자발적으로
드롭을로 (이상 90 일) 당신의 로컬 저장소에 남아에서 지정된 숨김 항목을 삭제
git drop <stash-reference>
숨겨둔 reflog; 다음 지정된 은닉을 적용하고
git pop <stash-reference>
를 사용
팝업 그것을는 숨김 reflog로부터 대응하는 엔트리를 삭제한다; 또는
는 숨김 reflog의 모든 항목을 삭제 실행은
git stash clear
(하나 조심).
그러나이 세 가지 작업은 은닉 reflog에만 영향을줍니다. 특히, 관련 WIP 및 색인 객체가 저장소의 데이터베이스에서 즉시 삭제되지는 않습니다. 단지 그 객체들을 도달 할 수 없도록 만듭니다. 후자는 결국 "저장소 림보 (residence limbo)"에 남아있을 것이고 결국에는 쓰레기 수거되어 "진정한 죽음"을 당할 것입니다. 유용한 것은 알고 있어요
: 실수 드롭 은닉, 당신은 아직도 당신이 두 개의 개체의 SHA를 기억하거나 식별 할 수 있다면, 당신의 repo의 내장에서 검색 할 수있을 경우 (WIP 및 색인).
3 - 컴퓨터를 재부팅 할 때 변경 사항이 손실 될 수 있도록 작업을 임시 저장합니까?
번호는 다른 모든 커밋 개체와 다르지 않습니다. 다시 부팅해도 아무런 영향을 미치지 않습니다.
1. 귀하가 만드는만큼. 2. *, * pop *, * clear *을하지 않는 한. 3. 아니오. 재부팅 후에는 여전히 액세스 할 수 있습니다. http://git-scm.com/book/en/Git-Tools-Stashing – Jubobs
Downvoter를 참조하십시오. 질문은 생각보다 미묘 할 수도 있습니다 ... – Jubobs
git에서는 거의 불가능한 위치에 있습니다. 범하다. 나는 개인적으로 그 모든 유용한 것으로 은닉되어 있지 않습니다. –