In a discussion between a Git user and a user of both Mercurial and Git,
there was a debate of the relative merits of "named branches" vs "bookmark
branches".

Mercurial (and Fossil) supports named branches (Mercurial recently added
support for bookmark branches). Git supports bookmark branches.

With named branches, metadata is maintained to easily allow the branch
membership of any commit to be determined.

With bookmark branches, only the branch head is tracked, so determining
branch membership is hard.

The Git user's arguments against named branches are (1) name collisions
resulting from different people using the same names.* And (2) branch names
be immutable.

Ignoring #2, I can see where #1 could be become a problem when the number
of contributors gets large enough.

I am thinking maybe use an UUID to identify and keep the branch name in a
separate control artifact.

Fossil already supports moving commits between branches via control
artifacts, so moving naming out to a "branchname" tag should not be a huge
tear up.

( * Most of the suggested Git workflows I've seen say to merge (usually
after rebasing) the branch back to (an updated) "master" (aka "trunk"),
then send either a patch or a pull request.)
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to