Re: [PATCH] Support running an arbitrary git action through checkout

2013-05-10 Thread Jeff King
On Fri, May 10, 2013 at 05:06:07PM +0200, Thomas Rast wrote: > + if (argc > 1 && !prefixcmp(argv[1], "--")) { > + const char *subcommand = argv[1] + 2; > + struct cmdnames main_cmds, other_cmds; > + > + memset(&main_cmds, 0, sizeof(main_cmds)); > +

Re: [PATCH] Support running an arbitrary git action through checkout

2013-05-10 Thread Ramkumar Ramachandra
Thomas Rast wrote: > [1] correctly observed that we are already wrapping three different > operations under the git-checkout command. Incorrect. We merge_trees() and update refs. I see no reason to create artificial abstractions on top of this. > [...] Let's not talk about how gross your imple

Re: [PATCH] Support running an arbitrary git action through checkout

2013-05-10 Thread Junio C Hamano
Thomas Rast writes: > [1] correctly observed that we are already wrapping three different > operations under the git-checkout command. It is not April 1st, but perhaps it is in Berlin ;-) By the way I do not necessarily think that different operations "checking out specific paths" and "checking

[PATCH] Support running an arbitrary git action through checkout

2013-05-10 Thread Thomas Rast
[1] correctly observed that we are already wrapping three different operations under the git-checkout command. To lead that design -- and the Koan -- to the obvious conclusion, some additional work is required. With this patch, you can say git checkout --reset foo # reset HEAD to foo gi