Re: Itches with the current rev spec
- From
- Yann Dirson <dirson@bertin.fr>
- Date
- Apr 29, 2013, 15:37 UTC
- Message-ID
- <20130429173726.04cb5ac5@chalon.bertin.fr>
- In-Reply-To
- <CALkWK0=W_FxDwc3Tby=h90yc5i8UEuT7maERahFRDQU=hQ633g@mail.gmail.com>
On Mon, 29 Apr 2013 20:38:03 +0530 Ramkumar Ramachandra <artagnon@gmail.com> wrote:
> 3. "Range" is not an inherent property of A..B or A...B. There are no > "revision ranges".
Well, that could be seen as a problem, the .. syntax being commonly associated with the concept of range.
Show 23 quoted lines
> 4. Every command is free to interpret positive and negative commits as > it sees fit. Since there is no ordering, it must never treat one > negative commit differently from another negative commit, or one > positive commit differently from another positive commit. > > show takes a list of positive commits and shows all of them. > > log will show all the commits reachable from positive commits, and > exclude all the commits reachable from negative commits. Here, the > "list of commits" are interpreted differently from the show case. > > diff can either take two positive commits or one positive + one > negative commit. In the latter case, it swaps the arguments and > treats both as positive commits. > > rebase can take one negative commit and one positive commit. The > commits reachable from the positive commit, but not from the negative > commit are replayed onto the negative commit. Now, we can use --onto= > to override the commit onto which to replay. But the fundamental > constraint remains: rebase _cannot_ make this --onto= parameter part > of the normal rev spec (we only have two types of commits: positive > and negative to which we can assign different meanings). > --
Don't forget the particular situation of cherry-pick, which shows a situation where we may want to specify a set of single commits and ranges, but for which the current mechanisms cause a problem.
See: http://thread.gmane.org/gmane.comp.version-control.git/199994/focus=200058
-- Yann Dirson - Bertin Technologies