From: Michael J Gruber <git@drmicha•warpmail.net>
To: Piotr Krukowiecki <piotr.krukowiecki@gmail•com>
Cc: Git Mailing List <git@vger•kernel.org>
Subject: Re: git cherry improvements suggestions
Date: Wed, 23 Mar 2011 11:46:38 +0100 [thread overview]
Message-ID: <4D89CF8E.4070100@drmicha.warpmail.net> (raw)
In-Reply-To: <AANLkTimk0bkOGVy2W+XddHRuf-1xw+d0RwzPhnk40vi8@mail.gmail.com>
Piotr Krukowiecki venit, vidit, dixit 23.03.2011 09:11:
> Hi,
>
> Short version:
>
> 1. The <limit> is misleading IMO
In what way? Is the documentation wrong?
> 2. Please extend the output to show "full diff"
> 3. Please add numerical/time <limit>
> 4. Would it be possible to use "=" for "equivalent change"?
>
> Please tell me your opinions.
You will be a happy user of "git log --cherry A...B" instead of "git
cherry A B". It gives you all the log option (e.g. p for diff) that you
like and uses "=" rather than "-". It's currently in next and will be in
the next release.
>
>
> Long version:
>
> I have a branch that have diverged long time ago from main branch. I can't use
> merge, so I'm using cherry-pick to transplant changes between branches
> (the other reason is I'm using git-svn...)
>
> I noticed I did not transplant a certain commit recently. I wanted to
> see if there
> are any other commits I didn't transplant. I tried using git cherry:
>
>
> 1. man page says: git cherry [-v] [<upstream> [<head> [<limit>]]]
>
> $ git cherry -v master 9_1 20
> fatal: Unknown commit 20
>
> After reading man page I though the limit is a numeric limit, like "check
> last 20 commits".
It clearly is the name of a commit in that picture.
>
> 2. The cherry currently shows only changes against one branch:
>
> Every commit that doesn’t exist in the <upstream> branch has its id (sha1)
> reported[...] The ones that have equivalent change already in the <upstream>
> branch are prefixed with a minus (-) sign, and those that only exist in the
> <head> branch are prefixed with a plus (+) symbol
>
> So it will not show commits that exist only in <upstream> but not in <head>.
>
> In my case changes are transplanted both ways (in general), so I have to check
> both branches.
You'll be a happy user of "git log --cherry-mark --left-right A...B" :)
> 3. I think a numerical limit (or even: time limit etc) of checked commits would
> be useful, especially in "full diff" mode. Without it would be not
log has a limit argument (-<number>), though I'm not sure it is exactly
what you want.
> 4. The output format uses "-" to show commits that exist in both branches.
> I find this unnatural. There probably is a reason for this? But maybe it would
> be possible to change the symbols? For example:
>
> - commit in upstream only
> + commit in head only
> = equivalent commit
>
> Or "<", ">", " " or any other graphic symbol.
git log --cherry-mark --left-right will use <,=,>
git log --cherry-mark or --cherry will use *,=
(And yes, you can use it with --graph!)
Cheers,
Michael
next prev parent reply other threads:[~2011-03-23 10:50 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-23 8:11 git cherry improvements suggestions Piotr Krukowiecki
2011-03-23 10:46 ` Michael J Gruber [this message]
2011-03-23 13:23 ` Piotr Krukowiecki
2011-03-23 13:33 ` Michael J Gruber
2011-03-23 14:43 ` Piotr Krukowiecki
2011-03-23 14:44 ` Michael J Gruber
2011-03-23 19:28 ` Piotr Krukowiecki
2011-03-24 7:40 ` Piotr Krukowiecki
2011-03-24 7:47 ` Michael J Gruber
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D89CF8E.4070100@drmicha.warpmail.net \
--to=git@drmicha$(echo .)warpmail.net \
--cc=git@vger$(echo .)kernel.org \
--cc=piotr.krukowiecki@gmail$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox