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

Re: [PATCH 01/10] t9100-git-svn-basic.sh: use the $( ... ) construct for command substitution

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 12, 2016, 19:56 UTC
Message-ID
<xmqqd1t6tvut.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<1452595518-38149-2-git-send-email-gitter.spiros@gmail.com>
Elia Pinto <gitter.spiros@gmail.com> writes:
Show 6 quoted lines
> @@ -265,18 +265,18 @@ test_expect_success 'able to dcommit to a subdirectory' "
>  	git update-index --add d &&
>  	git commit -m '/bar/d should be in the log' &&
>  	git svn dcommit -i bar &&
> -	test -z \"\`git diff refs/heads/my-bar refs/remotes/bar\`\" &&
> +	test -z \"\$(git diff refs/heads/my-bar refs/remotes/bar)\" &&

This is entirely outside the scope of this series, but we may want to see if it makes it easier to read and maintain to turn executable part of test_expect_success that is double-quoted to use single quotes around it instead for many of our tests.

This one is a prime example of it. I do not think the executable part is getting _any_ benefit from being quoted inside double-quote pair. All the single quoted strings it uses in the script commands (e.g. the argument to "git commit -m") can equally be quoted with double quotes safely, and there is no $variable reference that it wants to refer to the value of the $variable when the command line of test_expect_success itself is constructed.

Show 23 quoted lines
>  	mkdir newdir &&
>  	echo new > newdir/dir &&
>  	git update-index --add newdir/dir &&
>  	git commit -m 'add a new directory' &&
>  	git svn dcommit -i bar &&
> -	test -z \"\`git diff refs/heads/my-bar refs/remotes/bar\`\" &&
> +	test -z \"\$(git diff refs/heads/my-bar refs/remotes/bar)\" &&
>  	echo foo >> newdir/dir &&
>  	git update-index newdir/dir &&
>  	git commit -m 'modify a file in new directory' &&
>  	git svn dcommit -i bar &&
> -	test -z \"\`git diff refs/heads/my-bar refs/remotes/bar\`\"
> +	test -z \"\$(git diff refs/heads/my-bar refs/remotes/bar)\"
>  	"
>  
>  test_expect_success 'dcommit should not fail with a touched file' '
> @@ -295,7 +295,7 @@ test_expect_success 'able to set-tree to a subdirectory' "
>  	git update-index d &&
>  	git commit -m 'update /bar/d' &&
>  	git svn set-tree -i bar HEAD &&
> -	test -z \"\`git diff refs/heads/my-bar refs/remotes/bar\`\"
> +	test -z \"\$(git diff refs/heads/my-bar refs/remotes/bar)\"
>  	"
Likewise.
Previous: Elia PintoNext: Elia Pinto
Message 3 of 12 in “use the $( ... ) construct for command substitution”
  1. 00/10 use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  2. 01/10 t9100-git-svn-basic.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  3. Junio C HamanoJan 12, 2016
  4. 02/10 t9101-git-svn-props.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  5. 03/10 t9104-git-svn-follow-parent.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  6. 04/10 t9105-git-svn-commit-diff.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  7. 05/10 t9107-git-svn-migrate.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  8. 06/10 t9108-git-svn-glob.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  9. 07/10 t9109-git-svn-multi-glob.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  10. 08/10 t9110-git-svn-use-svm-props.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  11. 09/10 t9114-git-svn-dcommit-merge.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 2016
  12. 10/10 t9118-git-svn-funky-branch-names.sh: use the $( ... ) construct for command substitutionElia Pinto, Jan 12, 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.