On Fri, Feb 5, 2016 at 12:33 PM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: > Stefan Beller wrote: >> On Thu, Feb 4, 2016 at 4:59 PM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: >>> Stefan Beller wrote: > >>>> +++ b/submodule-config.h >>>> @@ -14,6 +14,7 @@ struct submodule { >>>> + const char *update; >>> >>> gitmodules(5) tells me the only allowed values are checkout, rebase, >>> merge, and none. I wouldn't know at a glance how to match against >>> those in calling code. Can this be an enum? >> >> "Note that the !command form is intentionally ignored here for >> security reasons." >> >> However you can overwrite the update field in .git/config to be "! [foo]", >> which we also need to support, so let's keep it a string for now? > > I had forgotten about "!command". I think making it a string makes > the field hard to use: how do I determine whether it was checkout, > rebase, merge, custom, or none? Are they case-sensitive? Am I > supposed to strip whitespace? > > One possibility would be to have an enum and a string: > > enum submodule_update_type update; > const char *update_command; ok, that makes sense. > > Thanks, > Jonathan -- 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