git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Can't export whole repo as patches

From
PBPeter Baumann <peter.baumann@gmail.com>
Date
Apr 7, 2006, 18:47 UTC
Message-ID
<20060407184701.GA6686@xp.machine.de>

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@gmail.com>
  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
Next: Junio C Hamano
Message 1 of 10 in “Can't export whole repo as patches”
  1. Peter BaumannApr 7, 2006
  2. Junio C HamanoApr 7, 2006
  3. How to create independent branchesPeter Baumann, Apr 8, 2006
  4. Jakub NarebskiApr 8, 2006
  5. Peter BaumannApr 9, 2006
  6. Peter BaumannApr 9, 2006
  7. Junio C HamanoApr 8, 2006
  8. Petr BaudisApr 8, 2006
  9. Junio C HamanoApr 8, 2006
  10. Johannes SchindelinApr 8, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.