On Thu, Apr 03, 2025 at 09:08:59PM -0700, Martin von Zweigbergk wrote: > Jujutsu (and Mercurial) keep track of the set of visible heads. There > can be branches but they are not necessary. When you rewrite a commit, > Jutjutsu always rewrites all descendants. It also updates all branches > pointing to those commits automatically. For example, if you update > the description of some commit with `jj describe -m 'new description > --revision xyz', then commit xyz and all its descendants will be > updated, and any branches pointing to any of the rewritten commits > will be updated. I think I would find that too patronising, probably unbearable. > > and even then still not workable because Git might > > have to search _many_ branches to find commits matching the given change > > ID. (Fossil could have an index on change ID and trivially make that > > search possible, but for Git adding an index is more complicated.) > > Yes, I understand that it would be significant work to add support in > Git. I hope that Git can gain the feature eventually, but we have no > expectation that it will be implemented soon, especially not the UX > part (the preservation-on-rewrite part should be simpler, I think). Ah, well, Git does have an index: refs. You could use refs/change-IDs/<change-ID> to index by change ID.