On Sun, Apr 3, 2016, at 09:09 PM, L. David Baron wrote:
> On Saturday 2016-04-02 18:51 -0300, Eric Rescorla wrote:
> > 1. I write a bunch of code, committing along the way, so I have a lot of
> > commits named "Checkpoint" and "Fix bug" and the like.
> > 2. When it works, I push the code up to the review system for review.
> > 3. In response to review comments, I add a bunch more changes as new
> > commits and push them up the review system for review.
> > 4. Repeat 2 and 3 until I get r+
> > 5. Squash everything into one commit and land it.
> > 
> > Every time I do #3, it creates a new review request, but as you can see,
> > this doesn't have any meaningful connection to my local commits, which is a
> > good thing because while I want to keep my local history, I don't want it
> > to show up either in review or in the tree. This is also the way I want to
> > see patches because I want to review the whole thing at once.
> 
> This is why I use mq.  With mq, I maintain the sequence of
> changesets that are the logical units to be committed (and submitted
> for review), and I have the history of that sequence (in a
> version-controlled patch repository).
> 
> It's useful for reviewability and for bisection for the logical
> units that I commit to be small and (for review) understandable.
> And it's useful for me to have a history of the work I've done, for
> backups, for the ability to revert, and for the ability to remember
> what I did and why.
> 
> I still think this is a good model for doing development, despite
> the attempts of Mercurial developers to deprecate it.  I recognize
> that it's not the right tool for everybody, though.

FYI, using Mercurial with the "mutable-history" extension enabled does
preserve this information, as changesets that have been modified are
kept in the repository and marked `obsolete`. You can still find and
inspect them with normal Mercurial commands, although you may need to
add `--hidden` to get `hg log` to display them, like:
`hg log --hidden -r 'allprecursors(changeset)'`

That command will show you all the obsolete changesets that are older
versions of the changeset in question. I would like Mercurial to grow
better ways to inspect this data, like an equivalent to `hg log --graph`
to visualize the life of a changeset would be great.

-Ted
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to