Re: [PATCH] Teach revision walker about reflog ranges
From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:44:01
Hi, On Sat, 29 Dec 2007, Junio C Hamano wrote:
Johannes Schindelin [off-list ref] writes:quoted
Now you can ask for a revision range master@{2.weeks.ago..1.day.ago} or even something like HEAD@{20..yesterday}You can _ask_ all you want, but it is not clear what it does from this description. I guess you are rewriting master@{A..B} to master@{A}..master@{B}, but that is not clear from the commit log nor documentation (did I even see a documentation patch?).
Oh, sorry, I meant to mark this as RFC-after-1.5.4. It's just that I had a need for it, and hacked it.
Also, I am not convinced that the rewrite gives the semantics the users
naturally expect from @{A..B}. I would even suspect that people would
expect "git log master@{0..2}" to behave more like "git show master@{0}
master@{1} master@{2}".
Is that so? I would have expected "git log -g master@{2..0}" like that.
It would be relatively easy to accomodate your wish (almost: it would not
handle 0..2, but only 2..0) by calling
init_reflog_walk(&revs->reflog_info);
in the case that ".." was found inside "@{[...]}".
But my use case was to make it easy to see what changed in a multi-branch
remote without much typing: "git log origin/master@{1..}", which would not
be helped by that change.
Ciao,
Dscho