• nogooduser@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    3 days ago

    It’s not the mechanism of branching that I prefer.

    It’s the fact that Mercurial tags the commit with the name of the branch that it was committed to which makes it much easier to determine whether a commit is included in your current branch or not.

    Also, Mercurial has a powerful revision search feature built in which I love (https://www.mercurial-scm.org/doc/hg.1.html#revisions).

    • bleistift2
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 days ago

      I admit that I have been bitten by the fact that commits don’t have a “true home branch”.

    • balsoft@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      2 days ago

      It’s the fact that Mercurial tags the commit with the name of the branch that it was committed to which makes it much easier to determine whether a commit is included in your current branch or not.

      Isn’t this trivial in Git too? git branch --contains COMMIT ?

      • Alphare@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        2 days ago

        Sure, if you want to do it once, but Git still has to compute that information (save for a new-ish cache that is just that, a cache). But that is not the point really, the point is that Mercurial’s graph Is the same (topologically) everywhere, which is not the case in Git because branches (and thus remotes) have different names. So saying that a branch contains a commit is not the same as a commit being on a branch. There are a bunch of great properties that emerge from this but it’s too long for this comment and I should actually properly write this down at some point this year.