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

Re: [BUG] git-submodule has bash-ism?

From
John Keeping <john@keeping.me.uk>
Date
Jun 1, 2016, 19:16 UTC
Message-ID
<20160601191621.GO1355@john.keeping.me.uk>
In-Reply-To
<20160601190759.GB12496@sigill.intra.peff.net>
On Wed, Jun 01, 2016 at 03:07:59PM -0400, Jeff King wrote:
Show 23 quoted lines
> On Wed, Jun 01, 2016 at 07:31:00PM +0100, John Keeping wrote:
> 
> > > >  reset_submodule_urls () {
> > > > -	local root
> > > > -	root=$(pwd) &&
> > > >  	(
> > > > +		root=$(pwd) &&
> > > >  		cd super-clone/submodule &&
> > > >  		git config remote.origin.url "$root/submodule"
> > > >  	) &&
> > > >  	(
> > > > +		root=$(pwd) &&
> > > >  		cd super-clone/submodule/sub-submodule &&
> > > >  		git config remote.origin.url "$root/submodule"
> > [...]
> > I wonder if it's relevant that the "local root" line isn't &&-chained?
> > Is it possible that on some shells we ignore an error but everything
> > still works?
> 
> I don't think so. We're inside a function, so we wouldn't affect any
> outer &&-chaining in the function (and there isn't any in the caller
> anyway). I think it's a reasonable custom not to bother &&-chaining
> "local" lines, as they come at the top of a function and can't fail.

Can't fail if the shell supports "local", but if we're in a shell that doesn't support it, then the lack of "&&" may allow us to just carry on.

Previous: Jeff KingNext: Junio C Hamano
Message 9 of 17 in “[BUG] git-submodule has bash-ism?”
  1. Junio C HamanoMay 31, 2016
  2. Stefan BellerMay 31, 2016
  3. submodule: remove bashism from shell scriptStefan Beller, Jun 1, 2016
  4. Junio C HamanoJun 1, 2016
  5. Junio C HamanoJun 1, 2016
  6. Jeff KingJun 1, 2016
  7. John KeepingJun 1, 2016
  8. Jeff KingJun 1, 2016
  9. John KeepingJun 1, 2016
  10. Junio C HamanoJun 1, 2016
  11. John KeepingJun 1, 2016
  12. Jeff KingJun 1, 2016
  13. Junio C HamanoJun 1, 2016
  14. Junio C HamanoJun 1, 2016
  15. Eric SunshineJun 1, 2016
  16. Jeff KingJun 1, 2016
  17. Stefan BellerJun 1, 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.