Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If you liked the interface of Mercurial, there is https://foss.heptapod.net/mercurial/hg-git


I've used that in the past, but it doesn't really work that well on large projects--it basically works by keeping a hg and a git version of the same repository, and storing a mapping between the two, which scales really poorly with multi-million commit repositories.

What I really want is something that will let me use the interface of hg's power tools (revsets, phases, changeset evolution) on an existing git repository.


You will probably like Jujutsu, which takes much inspiration from Mercurial, and even has a few prior Mercurial hackers working on it. It uses the Git data model underneath (so feel free to use GitHub), but has an entirely rebuilt UX and set of algorithms: https://github.com/martinvonz/jj

It isn't a 1-to-1 hg clone, either. But tools like revsets are there, "anonymous branching", log templates, cset evolution is "built in" to the design, etc. There is no concept of phases, we might think about adding that, but there is a concept of immutable commits, so you don't overwrite public ones. The default output is designed to be succinct and beautiful, so it remains relevant on high-traffic repositories with lots of work-in-progress patches, and many developers.

It also has many novel features that make it stand out, like the working-copy-commit. We care a lot about performance and usability; to the extent performance is bad, some of it comes down to piggybacking on Git's data model and existing performance issues. Give it a shot. I think you might be pleasantly surprised.

Disclosure: I am a developer of Jujutsu. I do it in my spare time.

P.S: You might alternatively like Sapling, from Meta. It actually is a fork of Mercurial (you can see it in the UX and features) but is very different now; in particular it also uses the Git data model for the storage layer, so it works with GitHub. It will probably feel more familiar than Jujutsu at first. And it has some absolutely amazing features like `sl web` we can't match yet. https://sapling-scm.com/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: