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

format-patch: numbered patches from a patch list?

From
tom fogal <tfogal@alumni.unh.edu>
Date
Jul 22, 2009, 02:25 UTC
Message-ID
<auto-000020035874@sci.utah.edu>

I have a need to generate a numbered sequence of patches from a sparse sprinkling of patches on a branch. Is there a way to accomplish this?

Basically I want to say, `for the patches at the heads of these sha1s, give me a numbered sequence.' Currently I take the list of shas that I want, throw them in a file, and loop over each entry:

  for sha in $(cat patches) ; do git format-patch -o a/ ${sha}^..${sha} ; done

This is undesirable because each patch is the first patch in a series, e.g. "0001-...". A desirable interface would be specifying multiple disconnected ranges via some separator, say ",".

To hammer it home; given:
   ... -- A -- B -- C -- D -- E -- F -- G
I'd like a command / line or two of shell which could get me:
  the patch that created A: 0001
  the patch that created B: 0002
  the patch that created E: 0003
  the patch that created G: 0004

etc. It'd get confusing if I specified multiple branches. Fortunately I don't need that use case, and anyway I think just providing a raw ordering based on timestamp (ignoring branches) would be sufficient for any (of my) future needs.

The use case for all of this is disconnected repositories that really shouldn't be. We do `special' merging in subversion, so I do a lot of trunk work via git-svn, and then I have backporting sessions where I identify commits which should go on our release branches and put them there.

Thanks for any ideas,
-tom
Next: Junio C Hamano
Message 1 of 4 in “format-patch: numbered patches from a patch list?”
  1. tom fogalJul 22, 2009
  2. Junio C HamanoJul 22, 2009
  3. Jeff KingJul 22, 2009
  4. tom fogalJul 22, 2009

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.