From: Johannes Schindelin Date: Fri, 07 Jan 2011 14:51:45 GMT Subject: Re: [msysGit] [PATCH/RFC] alias: use run_command api to execute aliases Message-ID: In-Reply-To: Hi, On Fri, 7 Jan 2011, Erik Faye-Lund wrote: > On Fri, Jan 7, 2011 at 2:17 AM, Johannes Schindelin > wrote: > > > On Thu, 6 Jan 2011, Erik Faye-Lund wrote: > > > >> On Windows, system() executes with cmd.exe instead of /bin/sh. This > >> means that aliases currently has to be batch-scripts instead of > >> bourne-scripts. On top of that, cmd.exe does not handle single > >> quotes, which is what the code-path currently uses to handle > >> arguments with spaces. > >> > >> To solve both problems in one go, use run_command_v_opt() to execute > >> the alias. It already does the right thing prepend "sh -c " to the > >> alias. > > > > Would this not break setups where aliases were defined to execute > > batch scripts? > > > > If this is true, I'm of two minds here. > > It would indeed, but I wouldn't worry TOO much about it. We've clearly > told the users that Git for Windows is a tool that you have to be > willing to work on to use. > > But I'm kind of of two minds here myself, but for a slightly different > reason: I think Git for Windows SHOULD use cmd.exe to execute scripts. > We should be able to lose the msys-environment and still have the basic > functionality working. In that sense, this is a step in the wrong > direction. But I'd rather have all code use the same code-path to > execute scripts, and make a bit switch to cmd.exe together with porting > all supplied scripts to batch-files some time in the future. Okay, strike my objections, I agree now. Feel free to apply! Thanks, Dscho