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

[PATCH 00/14] Tidying up references code

From
mhagger@alum.mit.edu <mhagger@alum.mit.edu>
Date
Oct 13, 2011, 07:58 UTC
Message-ID
<1318492715-5931-1-git-send-email-mhagger@alum.mit.edu>
From: Michael Haggerty <mhagger@alum.mit.edu>

This is the next installment of the reference changes that I have been working on. This batch includes a lot of tidying up in preparation for the real changes.

The last few patches have a little bit of meat on them. They start changing the innards of refs.c to work less with strings and more with objects. This work will continue in later patches with the ultimate goal of swapping the data structure used to store cached references out from under the module--changing it from a sorted array of pointers into a hierarchical tree shaped like the reference namespace tree.

This patch series should be applied on top of "[PATCH v3] Provide API to invalidate refs cache". It has textual dependencies on that patch series, though logically I don't think that they interact.

Michael Haggerty (14):
  cache.h: add comments for git_path() and git_path_submodule()
  struct ref_list: document name member
  refs.c: rename some local "refname" variables
  refs: rename some parameters result -> sha1
  clear_ref_list(): rename from free_ref_list()
  resolve_gitlink_ref(): improve docstring
  is_refname_available(): remove the "quiet" argument
  parse_ref_line(): add docstring
  add_ref(): add docstring
  is_dup_ref(): extract function from sort_ref_list()
  refs: change signatures of get_packed_refs() and get_loose_refs()
  get_ref_dir(): change signature
  Pass a (cached_refs *) to the resolve_gitlink_*() functions
  resolve_gitlink_ref_recursive(): change to work with struct
    cached_refs
 cache.h |   15 +++
 refs.c  |  418 +++++++++++++++++++++++++++++++++-----------------------------
 refs.h  |   34 +++--
 3 files changed, 258 insertions(+), 209 deletions(-)
-- 
1.7.7.rc2
Next: mhagger@alum.mit.edu
Message 1 of 28 in “Tidying up references code”
  1. 00/14 Tidying up references codemhagger@alum.mit.edu, Oct 13, 2011
  2. 01/14 cache.h: add comments for git_path() and git_path_submodule()mhagger@alum.mit.edu, Oct 13, 2011
  3. Junio C HamanoOct 13, 2011
  4. 02/14 struct ref_list: document name membermhagger@alum.mit.edu, Oct 13, 2011
  5. Junio C HamanoOct 13, 2011
  6. 03/14 refs.c: rename some local "refname" variablesmhagger@alum.mit.edu, Oct 13, 2011
  7. 04/14 refs: rename some parameters result -> sha1mhagger@alum.mit.edu, Oct 13, 2011
  8. Junio C HamanoOct 13, 2011
  9. 05/14 clear_ref_list(): rename from free_ref_list()mhagger@alum.mit.edu, Oct 13, 2011
  10. Junio C HamanoOct 13, 2011
  11. 06/14 resolve_gitlink_ref(): improve docstringmhagger@alum.mit.edu, Oct 13, 2011
  12. Junio C HamanoOct 13, 2011
  13. 07/14 is_refname_available(): remove the "quiet" argumentmhagger@alum.mit.edu, Oct 13, 2011
  14. Drew NorthupOct 13, 2011
  15. Junio C HamanoOct 13, 2011
  16. Michael HaggertyOct 14, 2011
  17. 08/14 parse_ref_line(): add docstringmhagger@alum.mit.edu, Oct 13, 2011
  18. 09/14 add_ref(): add docstringmhagger@alum.mit.edu, Oct 13, 2011
  19. 10/14 is_dup_ref(): extract function from sort_ref_list()mhagger@alum.mit.edu, Oct 13, 2011
  20. Junio C HamanoOct 13, 2011
  21. 11/14 refs: change signatures of get_packed_refs() and get_loose_refs()mhagger@alum.mit.edu, Oct 13, 2011
  22. 12/14 get_ref_dir(): change signaturemhagger@alum.mit.edu, Oct 13, 2011
  23. 13/14 Pass a (cached_refs *) to the resolve_gitlink_*() functionsmhagger@alum.mit.edu, Oct 13, 2011
  24. 14/14 resolve_gitlink_ref_recursive(): change to work with struct cached_refsmhagger@alum.mit.edu, Oct 13, 2011
  25. t1402-check-ref-format: skip tests of refs beginning with slash on WindowsJohannes Sixt, Oct 13, 2011
  26. Junio C HamanoOct 13, 2011
  27. Junio C HamanoOct 13, 2011
  28. Johannes SixtOct 14, 2011

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.