I'd like to export the whole history of a project of mine via patches but I can't get the inital commit. How can I get the inital commit as a patch? That's what I tried: git --version git version 1.2.4 # debian sarge mkdir /tmp/testrepo && cd /tmp/testrepo git-init-db echo a > a_file.txt git-add a_file.txt git-commit -a -m "a_file added" echo b >> a_file.txt git-commit -a -m "a_file modifed" xp:/tmp/testrepo git-format-patch master~1 0001-a_file-modified.txt cat 0001-a_file-modified.txt From nobody Mon Sep 17 00:00:00 2001 From: Peter Baumann <peter.baumann@xxxxxxxxx> Date: Fri Apr 7 12:20:54 2006 +0200 Subject: [PATCH] a_file modified --- a_file.txt | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) d8ceeed82a29004c066a98e0d390818e65fa9da7 diff --git a/a_file.txt b/a_file.txt index 7898192..422c2b7 100644 --- a/a_file.txt +++ b/a_file.txt @@ -1 +1,2 @@ a +b -- 1.2.4 As you can see, there is only a patch of the second commit. But it seems that this behaviour is correct, because I asked for the diff between master^..master Obviously, I wanted a way to get the diff of master~2..master. Trying harder: git-format-patch master~2 Not a valid rev master~2 (master~2..HEAD) Any hint to the correct way is appreciated. </me thinking loudly> The best would be if git would have an implicit tag or branch called "init" (name doesn't really matter) which is the root of an empty repository. In that case one can do git-format-patch root..master and it would the right thing. Greetings, Peter Baumann - : 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