programing

gitstash create로 생성된 stash를 삭제하는 방법은 무엇입니까?

bestprogram 2023. 5. 2. 23:05

gitstash create로 생성된 stash를 삭제하는 방법은 무엇입니까?

는 제가 것 . 변경 Gitstash는 스크립팅하기가 . 스크립트를 작성하는 것이 조금 어렵다는 것을 제외하고는, 만약 당신이 변경이 없다면,git stash; git stash pop저장소에 변경 사항이 있는 경우와는 다른 작업을 수행합니다.

는 것 같습니다.git stash create그 답이고, 작동합니다. 이 문 제 에 제 대 것 작 모 고 합 동 니 이 다 든 는 한 하 외 를 가 다 지 니 답 입 한 작 ▁is , 니 합 다 ▁works thing 동 이 ▁every ▁problem ▁the , ▁and생성된 재고를 제거할 수 없습니다.재고를 제거할 방법이 있습니까?

내가 무엇을 하고 있는지 100% 명확히 하기 위해:

스택 생성:

~/tmp/a(master) $ git stash create 
60629375d0eb12348f9d31933dd348ad0f038435
~/tmp/a(master) $ git st
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   b
#
~/tmp/a(master) $ git reset --hard
HEAD is now at 555d572 log message

저장소 사용:

~/tmp/a(master) $ git apply 60629375d0eb12348f9d31933dd348ad0f038435
fatal: can't open patch '60629375d0eb12348f9d31933dd348ad0f038435': No such file or directory
~/tmp/a(master) $ git stash apply 60629375d0eb12348f9d31933dd348ad0f038435
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   b
#

스택 삭제: (마지막 비트가 작동하지 않는 경우 제외)

~/tmp/a(master) $ git stash drop !$
git stash drop 60629375d0eb12348f9d31933dd348ad0f038435
'60629375d0eb12348f9d31933dd348ad0f038435' is not a stash reference

git stash drop 변수나 .stash@{n} 쪽인가요?n삭제할 저장소를 지정합니다.를 커를에수없습다니할달에 수 .git stash drop.

git stash drop            # drop top hash, stash@{0}
git stash drop stash@{n}  # drop specific stash - see git stash list

저장소를 삭제하면 다음이 변경됩니다.stash@{n}스택 아래의 모든 스택의 지정.

왜 당신이 재고를 처분해야 한다고 생각하는지 모르겠습니다. 왜냐하면 당신이 사용하고 있다면.stash create삭제할 stash"라는 이름의 stash 파일을 사용할 수 .

생성된 일반 스택을 삭제하려면 다음과 같이 하십시오.git stash,너는 원한다git stash drop또는git stash drop stash@{n}자세한 내용은 아래를 참조하십시오.


다을사여생성스삭필없습다니요가제할음택으로 git stash create문서에서:

ref 네임스페이스에 저장하지 않고 stash 항목(일반 커밋 개체)을 만들고 해당 개체 이름을 반환합니다.이것은 스크립트에 유용합니다.사용할 명령어가 아닐 수 있습니다. 위의 "저장"을 참조하십시오.

캐시 커밋을 참조하는 항목이 없으므로 결국 가비지가 수집됩니다.


다음을 사용하여 생성된 저장소git stash또는git stash save 됩니다.refs/stash를 사용하여 삭제할 수 있습니다.git stash drop모든 Git 개체와 마찬가지로, 실제 저장 내용은 다음과 같은 경우까지 컴퓨터에서 삭제되지 않습니다.gc개체가 만료된 후 제거합니다(기본값은 2주 후).

오래된 은 오된스에저다에 됩니다.refs/stash reflog(시도)cat .git/logs/refs/stash) 및 를 사용하여 삭제할 수 있습니다.git stash drop stash@{n}서, 디에어n다음과 같이 표시되는 숫자입니다.git stash list.

100% 확실하게 하나의 스택만 가지고 있거나 모든 스택을 삭제하려는 경우git stash list107% 확실), 다음을 수행할 수 있습니다.

git stash clear

..그리고 그것들은 잊어버립니다. (이것은 모든 stash를 삭제합니다.

참고: (나처럼) 모든 것을 해결할 방법을 찾고 있는 사람들을 위해 이 답변을 추가했습니다.

출처: http://git-scm.com/docs/git-stash

drop [-q|--quiet] []

저장 목록에서 단일 저장 상태를 제거합니다.no를 지정하면 최신 항목이 제거됩니다.stash@{0}그렇지 않으면 stash@{} 형식의 유효한 stash 로그 참조여야 합니다.

예:

git stash drop stash@{5}

이렇게 하면 5번 저장 항목이 삭제됩니다.모든 스택 목록을 표시하는 방법을 사용합니다.

git stash list

다음을 사용해야 합니다.

git stash save

그리고 아닌

git stash create

이는 stash(일반 커밋 개체)를 생성하고 ref 네임스페이스에 저장하지 않고 해당 개체 이름을 반환하기 때문입니다.따라서 stash apply를 사용하여 액세스할 수 없습니다.

사용하다git stash save "some comment"단계별 변경사항을 복제하거나 다른 분기로 이동할 때 사용됩니다.

사용하다git stash apply stash@{0}저장된(저장된) 변경사항이 현재 분기에 반영되도록 하려면 (저장된 재고 지수가 0인 경우)

언제든지 사용할 수 있습니다.git stash list모든 저장 인덱스를 검사합니다.

및 사용git stash drop stash@{0}(저장된 저장된 저장된 저장 인덱스가 0이고 삭제하려는 경우) 특정 저장을 삭제합니다.

하나의 저장소만 삭제하려면git stash drop

모든 스택 삭제git stash clear

당신의 재고를 보여주기 위해.git stash show

특정 스택을 제거하려면 다음과 같이 하십시오.git stash drop indexnumbergit stash drop 4

git stash           // create stash,
git stash push -m "message" // create stash with msg,
git stash apply         // to apply stash,
git stash apply indexno // to apply  specific stash, 
git stash list          //list stash,
git stash drop indexno      //to delete stash,
git stash pop indexno,
git stash pop = stash drop + stash apply
git stash clear         //clear all your local stashed code

스택을 처리하는 가장 좋은 방법은 먼저 스택 목록을 확인합니다.

git stash list

그런 다음 우려 사항이 있는지 확인하고 확인한 다음 계속 진행합니다.

git stash drop

그리고 하나씩(위에서 아래로 이동) 스테이시를 삭제합니다.

git stash drop <index>

특정 인덱스의 스택을 삭제합니다. , 5.

하지만 그 목록에 필요한 것이 아무것도 없다는 것이 확실하다면 그렇게 하세요.

git stash clear

그리고 그것들을 모두 제거할 것입니다.

작동하기도 합니다.

git stash drop <index>

맘에 들다

git stash drop 5

문서가 여기에 있습니다(중국어).를 클릭하십시오.

사용할 수 있습니다.

git 재고 리스트

gitstash drop stash@{0}

여기에 이미지 설명 입력

Git stash clear는 전체 stash를 삭제할 것입니다.

cmd: git stash 지우기

스택 인덱스가 있는 특정 스택을 삭제하려는 경우 드롭을 사용할 수 있습니다.

cmd: git stash drop 4

(4는 stashid 또는 stashindex)

git 재고 리스트

git stash drop 1

여기에 이미지 설명 입력

UI 자체에서 스택을 작동하려는 VS Code 사용자는 다음 방법을 사용하십시오.

  1. GitLens 확장을 설치했는지 확인합니다.
  2. Source Control 탭으로 이동합니다.
  3. STSASHS 섹션을 확인합니다.당신은 당신의 모든 스테이시를 찾을 것입니다.git stash list)
  4. 각 스택에 대해 각각 스택 적용, HEAD와 비교스택 삭제에 대한 직접 버튼이 표시됩니다.

여기에 이미지 설명 입력

  1. 특정 저장을 삭제하려면 저장 삭제 버튼을 클릭하고 삭제(삭제) 확인을 제공합니다.

여기에 이미지 설명 입력

언급URL : https://stackoverflow.com/questions/5737002/how-to-delete-a-stash-created-with-git-stash-create