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

Re: [PATCH] difftool: fix bug when printing usage

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 6, 2017, 18:13 UTC
Message-ID
<xmqqinon2nnt.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<alpine.DEB.2.20.1702061716120.3496@virtualbox>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 12 quoted lines
>> +test_expect_success 'basic usage requires no repo' '
>> +	lines=$(git difftool -h | grep ^usage: | wc -l) &&
>> +	test "$lines" -eq 1 &&
>
> It may be easier to debug future breakages if you wrote
>
> 	git difftool -h | grep ^usage: >output &&
> 	test_line_count = 1 output &&
> or even better (changing the semantics now):
>
> 	test_expect_code 129 git difftool -h >output &&
> 	grep ^usage: output &&
True.
Show 13 quoted lines
>> +	# create a ceiling directory to prevent Git from finding a repo
>> +	mkdir -p not/repo &&
>> +	ceiling="$PWD/not" &&
>> +	lines=$(cd not/repo &&
>> +		GIT_CEILING_DIRECTORIES="$ceiling" git difftool -h |
>> +		grep ^usage: | wc -l) &&
>> +	test "$lines" -eq 1 &&
>
> Likewise, this would become
>
> 	GIT_CEILING_DIRECTORIES="$PWD/not" \
> 	test_expect_code 129 git -C not/repo difftool -h >output &&
> 	grep ^usage: output

I agree with the intent, but the execution here is "Not quite". test_expect_code being a shell function, it does not take the "one-shot environment assignment for this single invocation," like external commands do.

> More importantly: When I read $PWD all kinds of alarm bells go off in my
> head, as I immediately think of all the issues we have on Windows due to
> Git's regression test using POSIX paths all over the place.

And we appreciate that somebody who is more familiar with the issue is watching ;-).

> Insofar as I am the author of the builtin difftool:
>
> Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de>
OK, thanks.
Previous: Johannes SchindelinNext: Johannes Schindelin
Message 8 of 12 in “Remove --no-gui option from difftool usage string”
  1. Remove --no-gui option from difftool usage stringDenton Liu, Feb 4, 2017
  2. Jacob KellerFeb 4, 2017
  3. Denton LiuFeb 4, 2017
  4. David AguilarFeb 5, 2017
  5. [BUG] was: Re: [PATCH] Remove --no-gui option from difftool usage stringDavid Aguilar, Feb 5, 2017
  6. difftool: fix bug when printing usageDavid Aguilar, Feb 5, 2017
  7. Johannes SchindelinFeb 6, 2017
  8. Junio C HamanoFeb 6, 2017
  9. Johannes SchindelinFeb 7, 2017
  10. Junio C HamanoFeb 7, 2017
  11. Junio C HamanoFeb 7, 2017
  12. Johannes SchindelinFeb 8, 2017

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.