Re: configure names for temporary files

2014-10-10 Thread Sergio Ferrero
Ok. thanks!
David: I'm pretty sure matlab won't do that change soon :)

Sergio

On Wed, Oct 8, 2014 at 2:25 PM, Junio C Hamano  wrote:
> David Aguilar  writes:
>
>> In any case, it might be worth adjusting mergetool to use a more
>> conservative path (underscores instead of dots) since there
>> doesn't seem to be much downside to doing so.
>
> Hopefully there won't be tools that reject paths with "_" in them
> ;-)
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: configure names for temporary files

2014-10-08 Thread Junio C Hamano
David Aguilar  writes:

> In any case, it might be worth adjusting mergetool to use a more
> conservative path (underscores instead of dots) since there
> doesn't seem to be much downside to doing so.

Hopefully there won't be tools that reject paths with "_" in them
;-)
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: configure names for temporary files

2014-10-08 Thread David Aguilar
On Tue, Oct 07, 2014 at 11:33:16AM -0300, Sergio Ferrero wrote:
> Hello,
> 
> I'd like to configure git with a specific merge tool to merge Simulink
> model files.
> I have followed the steps to configure the merge tool successfully.
> 
> I typed the following on Git Bash:
> 
>git config --system mergetool..cmd '""
> -base "$BASE" -local "$LOCAL" -remote "$REMOTE" -merged "$MERGED"'
> 
> where:
> 
>-  is the name of the specific merge tool
>-  is the full path to the .exe file for the merge tool
>- the merge tool accepts the -base, -local, -remote and -merged arguments
> 
> 
> Then, after a merge detects conflicts on a Simulink model, I run the
> following command on the Git Bash:
> 
>git mergetool -t  .mdl
> 
> 
> This command properly launches the GUI of the merge tool, however it
> indicates that provided file names are invalid. They are of the form:
> .mdl..#.mdl,
> where  is either LOCAL, REMOTE or BASE and # is a number.
> 
> The merge tool needs to open the model in MATLAB and MATLAB does not allow
> opening models with '.' in their names.
> 
> Thus, is there a way to configure Git so that temporary models are of the
> form _mdl__#.mdl instead of <
> model_name>.mdl..#.mdl?

No such option exists.

In theory you could come up with a way to make this configurable.
A configuration variable could define a file pattern, for example.

The downside is making it configurable means supporting some
micro-format and the implementation would probably be ugly and
require eval. I don't think it needs to be configurable.

Right now the code flow is roughly:

MERGED=foo/bar.baz

ext="$$$(expr "$MERGED" : '.*\(\.[^/]*\)$')"
BACKUP="./$MERGED.BACKUP.$ext"
LOCAL="./$MERGED.LOCAL.$ext"
REMOTE="./$MERGED.REMOTE.$ext"
BASE="./$MERGED.BASE.$ext"

This results in a path that looks like:

./foo/bar.baz.BASE.81001.baz

I think we can do better by default.
A more conservative result would something like:

./foo/bar_BASE_81001.baz

Consequently, matlab (and perhaps other overly-picky tools) are
more likely to accept this path since it fits into their
windows-esque worldview where filenames can have at most 1 dot.

You should also email matlab support and kindly ask them to fix
their buggy software! ;-P foo.bar.baz is a perfectly valid
filename.

In any case, it might be worth adjusting mergetool to use a more
conservative path (underscores instead of dots) since there
doesn't seem to be much downside to doing so.
-- 
David
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


configure names for temporary files

2014-10-07 Thread Sergio Ferrero
Hello,

I'd like to configure git with a specific merge tool to merge Simulink
model files.
I have followed the steps to configure the merge tool successfully.

I typed the following on Git Bash:

   git config --system mergetool..cmd '""
-base "$BASE" -local "$LOCAL" -remote "$REMOTE" -merged "$MERGED"'

where:

   -  is the name of the specific merge tool
   -  is the full path to the .exe file for the merge tool
   - the merge tool accepts the -base, -local, -remote and -merged arguments


Then, after a merge detects conflicts on a Simulink model, I run the
following command on the Git Bash:

   git mergetool -t  .mdl


This command properly launches the GUI of the merge tool, however it
indicates that provided file names are invalid. They are of the form:
.mdl..#.mdl,
where  is either LOCAL, REMOTE or BASE and # is a number.

The merge tool needs to open the model in MATLAB and MATLAB does not allow
opening models with '.' in their names.

Thus, is there a way to configure Git so that temporary models are of the
form _mdl__#.mdl instead of <
model_name>.mdl..#.mdl?

Other temp file name should also be ok as long as the file does not
contains dots in the part that corresponds to the file name.

Thanks in advance,
Sergio
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html