two branches, cherrypicking when merging.
Uwe Brauer
oub at mat.ucm.es
Sun Nov 6 14:06:25 UTC 2016
>>> "Steve" == Steve Fink <sphink at gmail.com> writes:
> It sounds like this does not match your preferred workflow, but just as a
> comparison point, I would use a bookmark for Uwe instead of a named branch,
> then:
well I know a lot of people prefer bookmarks over named brances, since
bookmark are so flexible, you can move, you can delete them ......
> - record -i -m WIP # select the work in progress
> - commit -m 'mainline bugfix'
> - rebase -d default -s <mainline bugfix rev>
> Then I'd push the bugfix, update to the work in progress, and probably just
> make my additional changes in the working directory and amend them in,
> eventually doing a chistedit to smush the changes together, or split to
> break them apart. Or more likely, amend a bunch of things into one big
> blob, uncommit -a, amend -i -m ..., record -i -m ..., record -i -m ..., etc.
> I'm sure named branches are great for some people, for something.
> For me, I want to be able to just start changing stuff, and decide
> later which topological head each part of my changes belongs to.
However when I analyze a graph with bookmarks and I am not on the tip it
is difficult to know to which branch a particular part of the graph
belongs. For named branches that task is easy.
> If a nondefault named branch gets recorded when I commit something,
> it's just as likely as not to be a lie. So I'd rather stick to
> telling truths: I am modifying whatever it is that I have checked
> out, I'm recording independent pieces, then I'm moving them to the
> appropriate topological head and removing them (if necessary) from
> whatever I have checked out. No lies, just accurate recordings of
> intermediate state.
> Though it really isn't semantically different when using named branches.
> They just make me feel like I'm promising too much when I use them.
That is strange: I feel the other way around. I find the use of bookmarks
and especially the use of rebase as obscuring/lieing.
The feature I use most of rebase is the collapse option in order to
avoid clutter (and of course ammend for commit), but that feature I have
also in histedit, whose interface I find more user friendly. The
«transplant» feature of rebase I consider as obscuring things. A merge
is a merge is a merge, while rebase rewrites the histroy and lies to me.
The only situation I find it useful is when I want to contribute to a
repository I have *no* write access to. Then I will use a bookmark and
finally rebase my stuff on top of master/default and send a patch for
inspection.
More information about the Mercurial
mailing list