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

[PATCH v8 00/11] Untracked cache improvements

From
Christian Couder <christian.couder@gmail.com>
Date
Jan 27, 2016, 06:57 UTC
Message-ID
<1453877887-11586-1-git-send-email-chriscool@tuxfamily.org>

Here is a new version of a patch series to improve the untracked cache feature.

This v8 implements core.untrackedCache as a tristate config variable. When it's `true`, Git commands, especially `git status`, should always add the untracked cache and use it, and when `false`, Git commands should remove it. The default is `keep` in which case the untracked cache is neither removed nor added, and used if it is there.

This v8 is mostly identical to the previous v7. Only patch 9/11, which adds core.untrackedCache, has one change.

Patch 1/11 is a small bugfix.
Patch 2/11 to 4/11 add some small features that are missing.

Patchs 5/11 to 7/11 are some refactoring to prepare for the following patchs.

Patch 8/11 deals with the "ident" field in "struct untracked_cache".

Patch 9/11 adds core.untrackedCache. As Junio suggested, the check to see if we should add or remove the untracked cache is now made inside a new tweak_untracked_cache() function which is called by the new post_read_index_from() function after it calls check_ce_order().

Patch 10/11 is a hack that is needed to have test-dump-untracked-cache work like it used to.

Patch 11/11 contains tests.
The patch series is also available there:
https://github.com/chriscool/git/tree/uc-notifs71
Christian Couder (11):
  dir: free untracked cache when removing it
  update-index: use enum for untracked cache options
  update-index: add --test-untracked-cache
  update-index: add untracked cache notifications
  update-index: move 'uc' var declaration
  dir: add {new,add}_untracked_cache()
  dir: add remove_untracked_cache()
  dir: simplify untracked cache "ident" field
  config: add core.untrackedCache
  test-dump-untracked-cache: don't modify the untracked cache
  t7063: add tests for core.untrackedCache
 Documentation/config.txt               |  9 ++++
 Documentation/git-update-index.txt     | 67 +++++++++++++++++++++----
 builtin/update-index.c                 | 62 ++++++++++++++---------
 cache.h                                |  8 +++
 config.c                               | 24 +++++++++
 contrib/completion/git-completion.bash |  1 +
 dir.c                                  | 62 ++++++++++++++++++-----
 dir.h                                  |  3 +-
 environment.c                          |  7 +++
 read-cache.c                           | 27 ++++++++++-
 t/t7063-status-untracked-cache.sh      | 89 +++++++++++++++++++++++++++++++---
 test-dump-untracked-cache.c            |  4 ++
 12 files changed, 307 insertions(+), 56 deletions(-)
-- 
2.7.0.181.g07d31f8
Next: Christian Couder
Message 1 of 16 in “Untracked cache improvements”
  1. 00/11 Untracked cache improvementsChristian Couder, Jan 27, 2016
  2. 01/11 dir: free untracked cache when removing itChristian Couder, Jan 27, 2016
  3. 02/11 update-index: use enum for untracked cache optionsChristian Couder, Jan 27, 2016
  4. 03/11 update-index: add --test-untracked-cacheChristian Couder, Jan 27, 2016
  5. 04/11 update-index: add untracked cache notificationsChristian Couder, Jan 27, 2016
  6. Jeff KingMar 30, 2017
  7. Christian CouderMar 30, 2017
  8. Junio C HamanoMar 30, 2017
  9. Stefan BellerMar 30, 2017
  10. 05/11 update-index: move 'uc' var declarationChristian Couder, Jan 27, 2016
  11. 06/11 dir: add {new,add}_untracked_cache()Christian Couder, Jan 27, 2016
  12. 07/11 dir: add remove_untracked_cache()Christian Couder, Jan 27, 2016
  13. 08/11 dir: simplify untracked cache "ident" fieldChristian Couder, Jan 27, 2016
  14. 09/11 config: add core.untrackedCacheChristian Couder, Jan 27, 2016
  15. 10/11 test-dump-untracked-cache: don't modify the untracked cacheChristian Couder, Jan 27, 2016
  16. 11/11 t7063: add tests for core.untrackedCacheChristian Couder, Jan 27, 2016

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.