I'm working on porting rebase--interactive to C. This has a number of interesting issues: This will be the first C command which stops in the middle and then gets resumed. I've been thinking it would be nice if all of the commands like that shared handling of the process in some way. I think it would be good to have a "git abort" that would reset a conflicted merge, abort a rebase, etc., and probably "git checkout" should either require that there's nothing in progress or should abort anything that is in progress. (You can presently get lots of fun confusion by starting a rebase, checking out a different branch, deleting the branch that you were rebasing, attempting another rebase and trying to clean up.) It would also be nice to have a "git resume" that would continue whatever needed user attention after you've done it. (But you'd still need "git rebase skip" to do that command-specific first step before resuming.) There's a lot of stuff stored presently in ways that are convenient for shell scripts and inconvenient for C. Is anything else depending on the contents or location of ".git/.dotest-merge"? -Daniel *This .sig left intentionally blank* - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html