git-format-patch little gripe

6 messages, 4 authors, 2016-08-11 · open the first message on its own page

git-format-patch little gripe

From: Luben Tuikov <hidden>
Date: 2016-08-11 20:28:36

Yep, after more than a year, I simply cannot get used to it...
http://marc.theaimsgroup.com/?l=git&m=113259043217761&w=2
And as I've seen, other people brought that up too.

My brain simply says:
`` "git-format-patch" is singular and so the SHA-1 specified
   on the command line should generate a _single_ patch.''

Yeah, but no.

So I still make the mistake of:
# git-rev-list --no-merges --pretty=one-line HEAD -- <somepath>
    I select a commit
# git-format-patch -o /tmp/ <commit>
...
    Oh, f@#$!  <CTRL-C>
# git-format-patch -o /tmp/ <commit>^..<commit>

Is there a chance to make "git-format-patch" output a single
patch? of that commit only?

    Luben
P.S. And let "git-format-patches" go wild with the ideologies...
Sorry, needed to vent as I made this mistake twice already
today...




Re: git-format-patch little gripe

From: Jeff King <hidden>
Date: 2016-08-11 19:41:45

On Fri, Nov 03, 2006 at 01:07:20AM -0800, Luben Tuikov wrote:
So I still make the mistake of:
# git-rev-list --no-merges --pretty=one-line HEAD -- <somepath>
    I select a commit
# git-format-patch -o /tmp/ <commit>
...
    Oh, f@#$!  <CTRL-C>
# git-format-patch -o /tmp/ <commit>^..<commit>
For my own workflow, I don't want to have to pick the commit out of
rev-list (or log) output. I want to find it and hit a button to say "OK,
now mail this patch." So I put _all_ of my patches into an mbox, and
then browse them with mutt. Sort of a poor man's patch browser, but then
I'm ready to jump into mailing them immediately.

I use the following script:

#!/bin/sh
root=${1:-origin}
git-format-patch -s --stdout $root >.mbox
mutt -f .mbox
rm -f .mbox

And then in mutt, I use this macro to bind 'b' to editing the full
message w/ headers:

macro index b ":set edit_headers=yes<enter><resend-message>:set edit_headers=no<enter>"

I know that may be useless if you're not using mutt, but I just wanted
to stimulate some discussion among patch submitters about how they
actually do it. I'm not sure how configurable tig is, but it shouldn't
be too hard to add something like this to it.

Re: git-format-patch little gripe

From: Luben Tuikov <hidden>
Date: 2016-08-11 20:01:42

--- Jeff King <peff@peff.net> wrote:
For my own workflow, I don't want to have to pick the commit out of
rev-list (or log) output. I want to find it and hit a button to say "OK,
now mail this patch." So I put _all_ of my patches into an mbox, and
then browse them with mutt. Sort of a poor man's patch browser, but then
I'm ready to jump into mailing them immediately.

I use the following script:

#!/bin/sh
root=${1:-origin}
git-format-patch -s --stdout $root >.mbox
mutt -f .mbox
rm -f .mbox

And then in mutt, I use this macro to bind 'b' to editing the full
message w/ headers:

macro index b ":set edit_headers=yes<enter><resend-message>:set edit_headers=no<enter>"

I know that may be useless if you're not using mutt, but I just wanted
to stimulate some discussion among patch submitters about how they
actually do it. I'm not sure how configurable tig is, but it shouldn't
be too hard to add something like this to it.
That's very cool!

   Luben

Re: git-format-patch little gripe

From: Luben Tuikov <hidden>
Date: 2016-08-11 20:06:48

--- Martin Langhoff <martin.langhoff@gmail.com> wrote:
On 11/3/06, Luben Tuikov [off-list ref] wrote:
quoted
Yep, after more than a year, I simply cannot get used to it...
http://marc.theaimsgroup.com/?l=git&m=113259043217761&w=2
And as I've seen, other people brought that up too.
Hi Luben,

reading the thread, it sounds like you have a couple of shells scripts
or aliases that do what you want already ;-)
Yeah, would you know it those scripts got lost somewhere.  I now
know better -- branch off of git "next" and store in USB key. :-)
So I generally work off of "next" merged to my own branch which includes
extras I've collected along the way.

But what wouldn't I give to have
  git-format-_patch_ -o /tmp/ <commit>
generate a _single_ patch just as its name implies...

   Luben

Re: git-format-patch little gripe

From: Sean <hidden>
Date: 2016-08-11 20:08:50

On Fri, 3 Nov 2006 13:50:26 -0500
Jeff King [off-list ref] wrote:
For my own workflow, I don't want to have to pick the commit out of
rev-list (or log) output. I want to find it and hit a button to say "OK,
now mail this patch." So I put _all_ of my patches into an mbox, and
then browse them with mutt. Sort of a poor man's patch browser, but then
I'm ready to jump into mailing them immediately.

I use the following script:

#!/bin/sh
root=${1:-origin}
git-format-patch -s --stdout $root >.mbox
mutt -f .mbox
rm -f .mbox
If your mail setup support imap, the patches can be dumped directly into
it rather than having to go through an mbox.  For instance you can have
something like this in your ~/.gitconfig:

[imap]
   Host = imap.server.com
   Folder = "Drafts"
   User = uname
   Pass = password

And then the above command line becomes:

git-format-patch -s --stdout $root | git-imap-send

To move all the patches into your imap drafts folder to be accessed
by whatever email client you use.

Sean

Re: git-format-patch little gripe

From: Martin Langhoff <hidden>
Date: 2016-08-11 20:42:22

On 11/3/06, Luben Tuikov [off-list ref] wrote:
Yep, after more than a year, I simply cannot get used to it...
http://marc.theaimsgroup.com/?l=git&m=113259043217761&w=2
And as I've seen, other people brought that up too.
Hi Luben,

reading the thread, it sounds like you have a couple of shells scripts
or aliases that do what you want already ;-)

And for the scenario you mention, where upstream has taken some of
your patches... git-format-patch automatically tries to skip those.
Works well for me at least (ducks).

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help