$ git format-patch <committish> -- <path-not-in-working-dir> Doesn't work otherwise. The current code would complain that the path is not in the working tree and that "--" must be specified, even if the user _did_ specify it. This happens because "--" is removed from the arguments, so we need to pass PARSE_OPT_KEEP_DASHDASH to parse_options to avoid that. Comments by Junio C Hamano. Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx> --- builtin-log.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/builtin-log.c b/builtin-log.c index 33fa6ea..1766349 100644 --- a/builtin-log.c +++ b/builtin-log.c @@ -976,7 +976,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) */ argc = parse_options(argc, argv, prefix, builtin_format_patch_options, builtin_format_patch_usage, - PARSE_OPT_KEEP_ARGV0 | PARSE_OPT_KEEP_UNKNOWN); + PARSE_OPT_KEEP_ARGV0 | PARSE_OPT_KEEP_UNKNOWN | + PARSE_OPT_KEEP_DASHDASH); if (do_signoff) { const char *committer; -- 1.6.6.rc0.59.g5117f7.dirty -- 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