Subject: [PATCH v3 0/4] maintenance: use XDG config if it exists

From: Kristoffer Haugsbakk <[email-masked]>
Date: Thu, 18 Jan 2024 17:12:48 +0100

I use the conventional XDG config path for the global configuration. This
path is always used except for `git maintenance register` and
`unregister`.

§ Changes since v2 (by patch)

• config: factor out global config file retrieval
  • Remove doc on `git_global_config`
  • https://lore.kernel.org/git/[email-masked]/

§ Patches

• 1–3: Preparatory
• 4: The desired change

§ CC

• Patrick Steinhardt: `config` changes; v1 feedback
• Derrick Stolee: `maintenance` changes
• Eric Sunshine: v1 feedback
• Taylor Blau: v1 feedback
• Junio C Hamano: v2 feedback

§ CI

https://github.com/LemmingAvalanche/git/actions/runs/7521230119

Kristoffer Haugsbakk (4):
  config: format newlines
  config: rename global config function
  config: factor out global config file retrieval
  maintenance: use XDG config if it exists

 builtin/config.c       | 26 +++---------------------
 builtin/gc.c           | 27 ++++++++++++-------------
 builtin/var.c          |  2 +-
 config.c               | 26 ++++++++++++++++++++----
 config.h               |  3 ++-
 t/t7900-maintenance.sh | 45 ++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 86 insertions(+), 43 deletions(-)

Range-diff against v2:
1:  d5f6c8d62ec = 1:  1c92b772ef4 config: format newlines
2:  cbc5fde0094 = 2:  269490794bc config: rename global config function
3:  32e5ec7d866 ! 3:  0643a85892c config: factor out global config file retrieval
    @@ Commit message

      ## Notes (series) ##
    +    v3:
    +    • Remove doc on `git_global_config`
    +    • https://lore.kernel.org/git/[email-masked]/
         v2:
         • Don’t die; return `NULL`

    @@ config.h: int config_error_nonbool(const char *);
      #endif

      char *git_system_config(void);
    -+/**
    -+ * Returns `NULL` if is uncertain whether or not `HOME/.gitconfig` exists.
    -+ */
     +char *git_global_config(void);
      void git_global_config_paths(char **user, char **xdg);

4:  8bd67c5bf01 = 4:  e0880af0a31 maintenance: use XDG config if it exists
--
2.43.0