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

[PATCH 0/2] Eliminate cryptic "needs update" error message

From
Ramkumar Ramachandra <artagnon@gmail.com>
Date
Sep 26, 2010, 15:21 UTC
Message-ID
<1285514516-5112-1-git-send-email-artagnon@gmail.com>
In-Reply-To
<4C9E07B1.50600@workspacewhiz.com>
Hi Joshua,
Joshua Jensen writes:
> Is there opposition to modernizing this *term* to make it more clear
> based on the porcelain commands being run?

Most porcelain commands already contain checks to specifically prevent it from displaying this message. See:

cache.h:506:#define REFRESH_IN_PORCELAIN 0x0020 /* user friendly output, not "needs update" */ git-add--interactive.perl:215: ;# ignore 'needs update' read-cache.c:1109: needs_update_fmt = (in_porcelain ? "M\t%s\n" : "%s: needs update\n"); builtin/add.c:190: refresh_index(&the_index, verbose ? REFRESH_IN_PORCELAIN : REFRESH_QUIET, builtin/commit.c:284: if (refresh_cache(refresh_flags | REFRESH_IN_PORCELAIN)) builtin/reset.c:326: quiet ? REFRESH_QUIET : REFRESH_IN_PORCELAIN); builtin/reset.c:377: quiet ? REFRESH_QUIET : REFRESH_IN_PORCELAIN); cache.h:506:#define REFRESH_IN_PORCELAIN 0x0020 /* user friendly output, not "needs update" */ read-cache.c:1104: int in_porcelain = (flags & REFRESH_IN_PORCELAIN);

The real problem is with the shell scripts that invoke `git update-index --refresh` without `-q` and forget to redirect output to /dev/null. The Git infrastructure thinks update-index is a non-porcelain: little does it know that update-index being run from a porcelain-level shell script.

Thank you for reporting this bug.
-- Ram
Ramkumar Ramachandra (2):
  sh-setup: Write a new require_clean_work_tree function
  Porcelain scripts: Rewrite cryptic "needs update" error message
 git-pull.sh                |    5 +----
 git-rebase--interactive.sh |   16 ++++------------
 git-rebase.sh              |   14 +-------------
 git-sh-setup.sh            |   23 +++++++++++++++++++++++
 4 files changed, 29 insertions(+), 29 deletions(-)
-- 
1.7.2.2.409.gdbb11.dirty
Previous: Joshua JensenNext: Ramkumar Ramachandra
Message 5 of 12 in “What exactly does 'needs update' mean?”
  1. Joshua JensenSep 25, 2010
  2. Junio C HamanoSep 25, 2010
  3. Joshua JensenSep 25, 2010
  4. Joshua JensenSep 25, 2010
  5. 0/2 Eliminate cryptic "needs update" error messageRamkumar Ramachandra, Sep 26, 2010
  6. 1/2 sh-setup: Write a new require_clean_work_tree functionRamkumar Ramachandra, Sep 26, 2010
  7. Matthieu MoySep 26, 2010
  8. Ramkumar RamachandraSep 26, 2010
  9. Matthieu MoySep 26, 2010
  10. Ramkumar RamachandraSep 26, 2010
  11. 2/2 Porcelain scripts: Rewrite cryptic "needs update" error messageRamkumar Ramachandra, Sep 26, 2010
  12. Matthieu MoySep 26, 2010

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.