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

Re: [RFC] Possibility to choose ~/.config/git/config instead of ~/.gitconfig

From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Date
May 25, 2012, 19:13 UTC
Message-ID
<vpq396ooyzd.fsf@bauges.imag.fr>
In-Reply-To
<7vobpcrstn.fsf@alter.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 6 quoted lines
>> Besides, with my distro package maintainer hat on, I can tell you that
>> switching the config file to ~/.config/git and not reading
>> ~/.gitconfig would be a complete nonstarter.
>
> Absolutely.  So don't choose to deliberately introduce backward
> incompatibliity.  Problem solved.

It doesn't have to be backward incompatible. The proposal is to _allow_ users to have a ~/.config/git/config file, not to _force_ them to have one.

If Git reads both files, then ~/.gitconfig lovers can continue with it, and are not affected.

> Why is it bad to keep using ~/.gitconfig in the first place?  The UNIX
> convention to exclude names that begin with dot is not working for you?

The "It's a convention" argument doesn't work here. XDG is also a rather widely used convention these days, so "why not follow the convention" can be used both in favor of ~/.gitconfig or ~/.config/git/config.

~/.gitconfig alone would not be a huge problem, although personnally hate it already. I like to version my handwritten configuration files, but I don't want my $HOME to be a git repository. I already have a ~/etc/ directory with my configuration files in it, and ~/.gitconfig is basically a symbolic link. I wouldn't have to re-structure my $HOME if I had a structured and standard configuration directory like ~/.config.

Now, the real issue is that we're starting to have several user-wide config files (core.excludesfile, core.attributesfile, maybe one day we'll want others like user-wide hooks?), and having multiple ~/.git<something> really feels wrong. Just like we have /etc/<file> for applications that have only one configuration file, and /etc/<directory> for ones who need more, it seems sensible to have a configuration directory for a user, not just a set of configuration files in $HOME.

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Previous: Junio C HamanoNext: Jonathan Nieder
Message 18 of 26 in “[RFC] Possibility to choose ~/.config/git/config instead of ~/.gitconfig”
  1. nguyenhu@minatec.inpg.frMay 25, 2012
  2. Jonathan NiederMay 25, 2012
  3. Matthieu MoyMay 25, 2012
  4. Jonathan NiederMay 25, 2012
  5. Hilco WijbengaMay 25, 2012
  6. Jonathan NiederMay 25, 2012
  7. Hilco WijbengaMay 25, 2012
  8. config doc: remove confusion about relative GIT_DIR from FILES sectionJonathan Nieder, May 25, 2012
  9. Jeff KingMay 25, 2012
  10. Junio C HamanoMay 25, 2012
  11. Matthieu MoyMay 25, 2012
  12. Jeff KingMay 25, 2012
  13. Junio C HamanoMay 25, 2012
  14. Jonathan NiederMay 25, 2012
  15. Junio C HamanoMay 25, 2012
  16. Jonathan NiederMay 25, 2012
  17. Junio C HamanoMay 25, 2012
  18. Matthieu MoyMay 25, 2012
  19. Jonathan NiederMay 25, 2012
  20. Matthieu MoyMay 25, 2012
  21. Jonathan NiederMay 25, 2012
  22. Jonathan NiederMay 25, 2012
  23. Matthieu MoyMay 25, 2012
  24. Matthieu MoyMay 25, 2012
  25. Felipe ContrerasMay 26, 2012
  26. Heiko VoigtMay 26, 2012

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.