-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

At work we use ClearCase version tree merge arrows to visually
indicate what Fossil calls cherrypick and backout merges.  For a
cherrypick merge, we draw a merge arrow from the contributor
version(s) to the new version.  For a backout merge, we tend to draw a
merge arrow from the version just before the contributor.  For
whole-branch merges, we draw from the last version of the contributing
branch.  Of course there is ambiguity, but the presence of merge
arrows clearly indicates that a merge of some sort took place, and the
check-in comment tells what is meant by them.  This is very helpful
for glancing at a tree and seeing which projects picked up bits and
pieces of stuff from which other projects, where projects are
represented by separate branches but otherwise sharing files.

Fossil doesn't quite operate this way.  It has very easy merging, and
it gives good visual indication of merging entire branches, but
there's no visual for cherrypick and backout merges.  The check-in
comment can name the (positive or negative) contributor version(s),
and those names are clickable links in the UI.

But that's not quite enough, in my opinion.  I want to see something
in the timeline plot showing cherrypicks and backouts. Dotted, dashed,
and/or colored lines might do the job.  I also want to see the origins
of cherrypicks and backouts listed in the family, ancestors, and both
timeline links on the check-in info page.

Let me make a request.  If this feature is added to Fossil, I would
like it to be possible to edit the cherrypick and backout merge arrows
after the commit is complete, in the same way it's possible to edit
tags.  (Perhaps this could be implemented as special tags rather than
as a new card type.)

Many times while researching old code I've found engineers weren't
always careful with documenting where they got code from, and I was
glad I could add (or correct) merge arrows years after the fact so
that we wouldn't have to repeat my research to determine the origins
of everything.  Knowing the genesis of every part of the code is quite
helpful, for instance to find the original requirements, user desires,
supporting documentation, test procedures, or responsible engineers.

- -- 
Andy Goth | <andrew.m.goth/at/gmail/dot/com>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (MingW32)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJTvuk9AAoJELtYwrrr47Y4CKoIANdHjSArVKEZeYq4gx+iWZsV
5jrkam5E1hVGX/uIyIdY8+EwBDta77ZLbWEK99bNobD5U1bypX6tKCNclyTiOtWD
sPut0KtwhKp2Xf4WjNJpmpAeRGo2j8hXVHBkamGH9Nj+2f8aJd+80O4fFCTResCs
OLETnTkZFmDeEU78UyJ/fsTsskrlrG1fEaPnm3ZWP4Ae41k7MUNU6YQ3iTlrqHsm
JS+x8gIAjcuslv+e/Ay24c1+1X54BH559fYHID7GTjXeeCwBdz0X8qL/NcLFF1sL
LqQuS0/baHyZfXjSOTV++l7HZim2obmyZig8gv8IWEdtEqv5iWo2AuRAAjIwLYE=
=oHLx
-----END PGP SIGNATURE-----
_______________________________________________
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