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

Re: [PATCH 1/1] Use correct /dev/null for UNIX and Windows

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 31, 2018, 04:54 UTC
Message-ID
<xmqqsh0mwwah.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<8159cbd1b8025f33fb9d0e254db1a3c2a066f853.1540923993.git.gitgitgadget@gmail.com>
"chris via GitGitGadget" <gitgitgadget@gmail.com> writes:
> From: chris <chris@webstech.net>
>
> Use File::Spec->devnull() for output redirection to avoid messages
> when Windows version of Perl is first in path.  The message 'The

Dscho, "Windows version of Perl is first in path" somehow feels contradicting with what one of the topics I saw from you were trying to enforce (or, at least, "set as the supported configuration").

I am guessing that the Perl you are building and shipping with Git for Windows would yield what the shell that ends up running the scriptlet `git config --get-color $key` prefers when asked for File::Spec->devnull(), and nothing will break with this patch even if that is "/dev/null", but I thought I'd double check.

Thanks.
Show 32 quoted lines
> system cannot find the path specified.' is displayed each time git is
> run to get colors.
>
> Signed-off-by: Chris. Webster <chris@webstech.net>
> ---
>  contrib/diff-highlight/DiffHighlight.pm | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/contrib/diff-highlight/DiffHighlight.pm b/contrib/diff-highlight/DiffHighlight.pm
> index 536754583..7440aa1c4 100644
> --- a/contrib/diff-highlight/DiffHighlight.pm
> +++ b/contrib/diff-highlight/DiffHighlight.pm
> @@ -4,6 +4,11 @@ use 5.008;
>  use warnings FATAL => 'all';
>  use strict;
>  
> +# Use the correct value for both UNIX and Windows (/dev/null vs nul)
> +use File::Spec;
> +
> +my $NULL = File::Spec->devnull();
> +
>  # Highlight by reversing foreground and background. You could do
>  # other things like bold or underline if you prefer.
>  my @OLD_HIGHLIGHT = (
> @@ -134,7 +139,7 @@ sub highlight_stdin {
>  # fallback, which means we will work even if git can't be run.
>  sub color_config {
>  	my ($key, $default) = @_;
> -	my $s = `git config --get-color $key 2>/dev/null`;
> +	my $s = `git config --get-color $key 2>$NULL`;
>  	return length($s) ? $s : $default;
>  }
Previous: Junio C HamanoNext: Junio C Hamano
Message 5 of 18 in “DiffHighlight.pm: Use correct /dev/null for UNIX and Windows”
  1. 0/1 DiffHighlight.pm: Use correct /dev/null for UNIX and WindowsChris. Webster via GitGitGadget, Oct 30, 2018
  2. 1/1 Use correct /dev/null for UNIX and Windowschris via GitGitGadget, Oct 30, 2018
  3. Jeff KingOct 31, 2018
  4. Junio C HamanoOct 31, 2018
  5. Junio C HamanoOct 31, 2018
  6. Junio C HamanoOct 31, 2018
  7. Johannes SchindelinOct 31, 2018
  8. 0/1 DiffHighlight.pm: Use correct /dev/null for UNIX and WindowsChris. Webster via GitGitGadget, Oct 31, 2018
  9. Chris WebsterOct 31, 2018
  10. Junio C HamanoOct 31, 2018
  11. Johannes SchindelinOct 31, 2018
  12. Junio C HamanoNov 1, 2018
  13. Johannes SchindelinNov 6, 2018
  14. Chris WebsterMay 7, 2019
  15. Philip OakleyMay 12, 2019
  16. Fwd: [PATCH v2 1/1] diff-highlight: Use correct /dev/null for UNIX and WindowsGit Gadget, May 8, 2019
  17. Junio C HamanoMay 9, 2019
  18. Johannes SchindelinMay 9, 2019

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.