Hello! I experienced this problem today while preparing a simple patch for reply in "[PATCH 2/2] Use is_pseudo_dir_name everywhere" thread. I used a workaround: add a file, commit, remove it, commit, add it once again, commit and after all format-patch. On 13:35 Fri 09 Jan , Nathan W. Panike wrote: > Currently, the command > > git format-patch -1 e83c5163316f89bfbde > > in the git repository creates an empty file. Instead, one is > forced to do > > git format-patch -1 --root e83c5163316f89bfbde > > This seems arbitrary. This patch fixes this case, so that > > git format-patch -1 e83c5163316f89bfbde Your patch doesn't solve the problem if there are more than one commit (say, 2 commits) and you run 'git format-patch -2'. Even with your patch format-patch writes an empty patch file corresponding to the root commit (actually, it creates 2 patches, but the first is empty). Please, correct me if I'm wrong. > > will produce an actual patch. > --- > builtin-log.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/builtin-log.c b/builtin-log.c > index 4a02ee9..5e7b61f 100644 > --- a/builtin-log.c > +++ b/builtin-log.c > @@ -977,6 +977,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) > list[nr - 1] = commit; > } > total = nr; > + if (total == 1 && !list[0]->parents) > + rev.show_root_diff=1; > if (!keep_subject && auto_number && total > 1) > numbered = 1; > if (numbered) > -- > 1.6.1.76.gc123b.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