> Mercurial was started almost at the same time as Git by Olivia Mackall, a kernel hacker at the time, motivated, just like Linus, by the BitKeeper and SourcePuller drama of spring 2005. Perhaps ironically, the now open-source BitKeeper may meet many of the author’s criteria for a post-Git version control system, at least at first glance from the BitKeeper homepage. https://www.bitkeeper.org/
Version Control Beyond Git
11–18 of 18 posts
Re: Version Control Beyond Git
#12I think git is OK, but one item I miss is what CVS/RCS has, "$Id$". It is very difficult to see the version of a binary if its source is tracked in git. Yes, someone said there is a way to get a git tag in the source, but the tag is not as easy to view as "$Id$" thus it is not obvious if it is the latest version. But, curious he did not mention CVS and RCS :)
As for "$Id$", in bazel you would use https://bazel.build/docs/user-manual#workspace-status which works very well and can differentiate between stable and volatile.
Re: Version Control Beyond Git
#13What would be your top choice for a post-Git VCS and why? I’m interested to try alternatives.
If your team is small, fossil is perfect. https://fossil-scm.org/ (it's mentioned in the article)
Re: Version Control Beyond Git
#14What would be your top choice for a post-Git VCS and why? I’m interested to try alternatives.
I'm a happy git user, although I've heard great things about lazygit: https://github.com/jesseduffield/lazygit?tab=readme-ov-file
Re: Version Control Beyond Git
#15The real issue is though, that each time someone writes a new VCS they seem to want to make it centralised again, often with silly ideas like auto-uploading changes. I do dislike the git stash and the "mess" of untracked files in git status, but I'm not sure what the true answer is.
Re: Version Control Beyond Git
#16I think git is OK, but one item I miss is what CVS/RCS has, "$Id$". It is very difficult to see the version of a binary if its source is tracked in git. Yes, someone said there is a way to get a git tag in the source, but the tag is not as easy to view as "$Id$" thus it is not obvious if it is the latest version. But, curious he did not mention CVS and RCS :)
Re: Version Control Beyond Git
#17What would be your top choice for a post-Git VCS and why? I’m interested to try alternatives.
That said, jujutsu is the one that's most sparked my interest and seems most akin to the subset of git features that I use in my daily workflow. (In the way that everyone apparently uses a different subset of C++, I imagine everyone uses a different subset of git.)
This blogpost was what made me try it: https://v5.chriskrycho.com/essays/jj-init/ which I found from this recent HN thread https://news.ycombinator.com/item?id=39232456. Other HN threads about it: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
That said, I haven't kept experimenting with it cause I had to stay productive (same reason I still haven't switched to Colemak). But I still have the tab open. And I did eventually switch to i3. So, maybe one day.
Re: Version Control Beyond Git
#18The feature I think I would most like to see is support for patches as a more first-class object. For example reverts and cherry picks have no real metadata. This leads to conflicts when merging branches that have cherry picks (although they often auto-resolve if they are exactly the same diff) and makes asking "Does $branch contain $patch" basically impossible to answer. https://pijul.org/ greatly improves this by m…
Is there a design doc one could study? At a high level I understand how the fact that patches are commutative is elegant, but it seems to me there are performance impacts when, to get to a repository state, we have to apply many patches. Would love to read how pijul thinks about that.
We also have a tag features, allowing you to pinpoint versions and go back instantly, and we have plans to make that feature even lighter on disk space.