git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 2/2] status: print stash info with --porcelain=v2 --show-stash

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Oct 22, 2021, 00:05 UTC
Message-ID
<CAPig+cQQurJuKieFcnZ8_10CaJA7vZ2kV=S+AaHVX3nhsVUG-Q@mail.gmail.com>
In-Reply-To
<20211021222532.463375-3-oystwa@gmail.com>
On Thu, Oct 21, 2021 at 6:25 PM Øystein Walle <oystwa@gmail.com> wrote:
Show 20 quoted lines
> The v2 porcelain format is very convenient for obtaining a lot of
> information about the current state of the repo, but does not contain
> any info about the stash. git status already accepts --show-stash but
> it's silently ignored when --porcelain=v2 is given.
>
> Let's add a simple line to print the number of stash entries but in a
> format similar in style to the rest of the format.
>
> Signed-off-by: Øystein Walle <oystwa@gmail.com>
> ---
> diff --git a/t/t7064-wtstatus-pv2.sh b/t/t7064-wtstatus-pv2.sh
> @@ -113,6 +113,21 @@ test_expect_success 'after first commit, create unstaged changes' '
> +test_expect_success 'after first commit, stash existing changes' '
> +       cat >expect <<-EOF &&
> +       # branch.oid $H0
> +       # branch.head initial-branch
> +       # stash 2
> +       EOF
> +
> +       test_when_finished "git stash pop && git stash pop" &&

If it's indeed important to clean up the stashes when the test finishes, then the test_when_finished() invocation should probably be a bit more robust...

> +       git stash -- file_x &&
> +       git stash &&

... since, as it is now, if an error occurs between these two git-stash invocations or before them, then there will only be zero or one stashes, so the double stash-pop by test_when_finished() will itself errout out. Better, perhaps to do this:

    test_when_finished "git stash pop && git stash pop || :" &&
> +       git status --porcelain=v2 --branch --show-stash --untracked-files=no >actual &&
> +       test_cmp expect actual
> +'
Previous: Junio C HamanoNext: Junio C Hamano
Message 6 of 8 in “Print stash info in the v2 porcelain format”
  1. 0/2 Print stash info in the v2 porcelain formatØystein Walle, Oct 21, 2021
  2. 1/2 status: count stash entries in separate functionØystein Walle, Oct 21, 2021
  3. Junio C HamanoOct 21, 2021
  4. 2/2 status: print stash info with --porcelain=v2 --show-stashØystein Walle, Oct 21, 2021
  5. Junio C HamanoOct 21, 2021
  6. Eric SunshineOct 22, 2021
  7. Junio C HamanoOct 22, 2021
  8. Eric SunshineOct 22, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.