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

Re: [PATCH] mingw: introduce the 'core.hideDotFiles' setting

From
Ramsay Jones <ramsay@ramsayjones.plus.com>
Date
May 4, 2016, 16:18 UTC
Message-ID
<572A20B9.7060301@ramsayjones.plus.com>
In-Reply-To
<17d30bb680a0452efd7b3c4f42e2f94478a86273.1462372716.git.johannes.schindelin@gmx.de>
On 04/05/16 15:40, Johannes Schindelin wrote:
Show 61 quoted lines
> From: Erik Faye-Lund <kusmabite@googlemail.com>
> 
> On Unix (and Linux) it is common that files and directories whose names
> start with a dot are not shown by default. This convention is used by Git:
> the .git/ directory should be left alone by regular users, and only
> accessed through Git itself.
> 
> On Windows, no such convention exists. Instead, there is an explicit flag
> to mark files or directories as hidden.
> 
> In the early days, Git for Windows did not mark the .git/ directory (or
> for that matter, any file or directory whose name starts with a dot)
> hidden. This lead to quite a bit of confusion, and even loss of data.
> 
> Consequently, Git for Windows introduced the core.hideDotFiles setting,
> with three possible values: true, false, and dotGitOnly, defaulting to
> marking only the .git/ directory as hidden.
> 
> The rationale: users do not need to access .git/ directly, and indeed (as
> was demonstrated) should not really see that directory, either. However,
> not all dot files should be hidden, as e.g. Eclipse does not show them
> (and the user would therefore be unable to add, say, a .gitattributes
> file).
> 
> In over five years since the last attempt to bring this patch into core
> Git, this patch has served Git for Windows' users well: no single report
> indicated problems with the hidden .git/ directory, and the stream of
> problems caused by the previously non-hidden .git/ directory simply
> stopped.
> 
> Initial-Test-By: Pat Thoyts <patthoyts@users.sourceforge.net>
> Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
> 
> 	Let's try this again (I will not point you to the previous
> 	submission, out of personal embarrassment).
> 
> 	This patch has served us so well in the Git for Windows project
> 	that there is little sense in hiding it from core Git.
> 
>  Documentation/config.txt |  6 ++++++
>  builtin/init-db.c        |  1 +
>  cache.h                  |  7 +++++++
>  compat/mingw.c           | 38 ++++++++++++++++++++++++++++++++++++++
>  config.c                 |  8 ++++++++
>  environment.c            |  1 +
>  git-compat-util.h        |  4 ++++
>  t/t0001-init.sh          | 30 ++++++++++++++++++++++++++++++
>  8 files changed, 95 insertions(+)
> 
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index 42d2b50..a9f599d 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -269,6 +269,12 @@ See linkgit:git-update-index[1].
>  +
>  The default is true (when core.filemode is not specified in the config file).
>  
> +core.hideDotFiles::
> +	(Windows-only) If true (which is the default), mark newly-created

The patch (if I'm reading it correctly) and the commit message indicate that the default is 'dotGitOnly'.

> +	directories and files whose name starts with a dot as hidden.
> +	If 'dotGitOnly', only the .git/ directory is hidden, but no other
> +	files starting with a dot.
> +

ATB, Ramsay Jones

Previous: Johannes SchindelinNext: Johannes Schindelin
Message 2 of 27 in “mingw: introduce the 'core.hideDotFiles' setting”
  1. mingw: introduce the 'core.hideDotFiles' settingJohannes Schindelin, May 4, 2016
  2. Ramsay JonesMay 4, 2016
  3. Johannes SchindelinMay 6, 2016
  4. Junio C HamanoMay 4, 2016
  5. Johannes SchindelinMay 6, 2016
  6. Junio C HamanoMay 6, 2016
  7. Junio C HamanoMay 6, 2016
  8. Johannes SchindelinMay 7, 2016
  9. Johannes SchindelinMay 7, 2016
  10. 0/2 Support marking .git/ (or all files) as hidden on WindowsJohannes Schindelin, May 7, 2016
  11. 1/2 mingw: introduce the 'core.hideDotFiles' settingJohannes Schindelin, May 7, 2016
  12. Junio C HamanoMay 9, 2016
  13. Johannes SchindelinMay 10, 2016
  14. Junio C HamanoMay 10, 2016
  15. Johannes SchindelinMay 11, 2016
  16. 2/2 mingw: remove unnecessary definitionJohannes Schindelin, May 7, 2016
  17. Junio C HamanoMay 9, 2016
  18. Johannes SchindelinMay 10, 2016
  19. Junio C HamanoMay 10, 2016
  20. Johannes SchindelinMay 11, 2016
  21. 0/2 Support marking .git/ (or all files) as hidden on WindowsJohannes Schindelin, May 10, 2016
  22. 1/2 mingw: introduce the 'core.hideDotFiles' settingJohannes Schindelin, May 10, 2016
  23. 2/2 mingw: remove unnecessary definitionJohannes Schindelin, May 10, 2016
  24. 0/2 Support marking .git/ (or all files) as hidden on WindowsJohannes Schindelin, May 11, 2016
  25. 0/2 Support marking .git/ (or all files) as hidden on WindowsJohannes Schindelin, May 11, 2016
  26. 1/2 mingw: introduce the 'core.hideDotFiles' settingJohannes Schindelin, May 11, 2016
  27. 2/2 mingw: remove unnecessary definitionJohannes Schindelin, May 11, 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.