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

[PATCH 0/4] In PS1 prompt, make upstream state indicators consistent with other state indicators

From
Justin Donnelly via GitGitGadget <gitgitgadget@gmail.com>
Date
Feb 25, 2022, 11:44 UTC
Message-ID
<pull.1162.git.1645789446.gitgitgadget@gmail.com>

These patches are about the characters and words that can be configured to display in the PS1 prompt after the branch name. I've been unable to find a consistent terminology. I refer to them as follows: [short | long] [type] state indicator where short is for characters (e.g. ?), long is for words (e.g. |SPARSE), and type is the type of indicator (e.g. sparse or upstream). I'd be happy to change the commit messages to a different terminology if that's preferred.

There are a few inconsistencies with the PS1 prompt upstream state indicator (GIT_PS1_SHOWUPSTREAM).

 * With GIT_PS1_SHOWUPSTREAM="auto", if there are no other short state
   indicators (e.g. + for staged changes, $ for stashed changes, etc.), the
   upstream state indicator appears adjacent to the branch name (e.g.
   (main=)) instead of being separated by SP or GIT_PS1_STATESEPARATOR (e.g.
   (main =)).
 * If there are long state indicators (e.g. |SPARSE), a short upstream state
   indicator (i.e. GIT_PS1_SHOWUPSTREAM="auto") is to the right of the long
   state indicator (e.g. (main +|SPARSE=)) instead of with the other short
   state indicators (e.g. (main +=|SPARSE)).
 * The long upstream state indicator (e.g. GIT_PS1_SHOWUPSTREAM="verbose")
   is separated from other (short or long) state indicators by a hard-coded
   SP. Other long state indicators are separated by a hard-coded pipe (|).

These patches are to make the upstream state indicators more consistent with other state indicators.

Justin Donnelly (4):
  git-prompt: rename `upstream` to `upstream_type`
  git-prompt: make upstream state indicator location consistent
  git-prompt: make long upstream state indicator consistent
  git-prompt: put upstream comments together
 contrib/completion/git-prompt.sh | 59 ++++++++++++++++----------------
 1 file changed, 30 insertions(+), 29 deletions(-)
base-commit: 4c53a8c20f8984adb226293a3ffd7b88c3f4ac1a
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1162%2Fjustinrdonnelly%2Fgit-prompt-upstream-consistency-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1162/justinrdonnelly/git-prompt-upstream-consistency-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1162
-- 
gitgitgadget
Next: Justin Donnelly via GitGitGadget
Message 1 of 15 in “In PS1 prompt, make upstream state indicators consistent with other state indicators”
  1. 0/4 In PS1 prompt, make upstream state indicators consistent with other state indicatorsJustin Donnelly via GitGitGadget, Feb 25, 2022
  2. 1/4 git-prompt: rename `upstream` to `upstream_type`Justin Donnelly via GitGitGadget, Feb 25, 2022
  3. 3/4 git-prompt: make long upstream state indicator consistentJustin Donnelly via GitGitGadget, Feb 25, 2022
  4. 2/4 git-prompt: make upstream state indicator location consistentJustin Donnelly via GitGitGadget, Feb 25, 2022
  5. 4/4 git-prompt: put upstream comments togetherJustin Donnelly via GitGitGadget, Feb 25, 2022
  6. Ævar Arnfjörð BjarmasonFeb 25, 2022
  7. Justin DonnellyFeb 27, 2022
  8. Ævar Arnfjörð BjarmasonFeb 27, 2022
  9. 0/4 In PS1 prompt, make upstream state indicators consistent with other state indicatorsJustin Donnelly via GitGitGadget, Feb 27, 2022
  10. 1/4 git-prompt: rename `upstream` to `upstream_type`Justin Donnelly via GitGitGadget, Feb 27, 2022
  11. 2/4 git-prompt: make upstream state indicator location consistentJustin Donnelly via GitGitGadget, Feb 27, 2022
  12. 3/4 git-prompt: make long upstream state indicator consistentJustin Donnelly via GitGitGadget, Feb 27, 2022
  13. 4/4 git-prompt: put upstream comments togetherJustin Donnelly via GitGitGadget, Feb 27, 2022
  14. Ævar Arnfjörð BjarmasonMar 22, 2022
  15. Junio C HamanoMar 23, 2022

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.