How can you tell if a git stash is no longer required?

后端 未结 3 1381
故里飘歌
故里飘歌 2021-02-20 10:55

Is it possible to tell whether a stash has already been applied, and therefore is no longer required, without doing git stash apply? Assume that I\'m only using one

3条回答
  •  孤城傲影
    2021-02-20 11:43

    If you use git diff stash, make sure to use Git 2.30 (Q1 2021).

    Before that, the code to see if "git stash drop"(man) can safely remove refs/stash has been made more careful.

    See commit 4f44c56 (24 Oct 2020) by René Scharfe (rscharfe).
    (Merged by Junio C Hamano -- gitster -- in commit 30f5257, 18 Nov 2020)

    stash: simplify reflog emptiness check

    Reported-by: Marek Mrva
    Signed-off-by: René Scharfe

    Calling rev-parse to check if the drop subcommand removed the last stash and treating its failure as confirmation is fragile, as the command can fail for other reasons, e.g. because the system is out of memory.

    Directly check if the reflog is empty instead, which is more robust.

    So the use of git rev-parse --verify --quiet to check if the stash dropped was the ast one has been replaced.

提交回复
热议问题