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

everybody does...instead of playing games lets put the worshiping to one side and start using alternatives


Is there an alternative that keeps the stage(/index) concept ?

I acknowedge that the inconsistent argument style looks clumsy when remembering `git log --name-only --oneline`. However, I value the workflow afforded by the stage: I can keep work for several tasks in my workspace until I am ready to commit them.

I've checked Fossil, Jujutsu, and Mercurial. Each disavows the stage. I understand that it takes more discipline (and I occasionally fail to adhere to that discipline). But, I'm not interested in the other features of a vcs if it forces me to work on only one thing at a time.


In Mercurial, you are ideally using TortoiseHg. When you make a commit, you can quite easily choose which files or hunks or lines to commit (and which not to commit, obviously). In that sense, the GUI acts as the staging area.

For Jujutsu, there's two good options I know of:

1. Use "jj commit -i". This opens up a screen which lets you interactively select files/hunks/lines to commit. You can also pass in a "--tool" commit to use something like Meld.

2. Use the "squash workflow" - basically making your own staging area using jj's flexibility. I can't explain it better than Steve does: https://steveklabnik.github.io/jujutsu-tutorial/real-world-w...


Oh, and if you think JJ "forces you to work on one thing at a time" then you have really missed a lot of what JJ offers. Look up "megamerge" - I've done this, and it works well. Here's a link: https://v5.chriskrycho.com/journal/jujutsu-megamerges-and-jj...


Git is not good, but I'm yet to see anything that's a clear improvement without sacrificing on the core capabilities. Do you have any recommendations that you like?


A lot of people love jujutsu/jj.


I'll be a late adopter, go ahead without me :)


What alternatives do you recommend?



mercurial was arguably better - but switching to it is probably a bit silly now


Modern Mercurial with evolution is extremely pleasant, and the more I use it the more I abhor git whenever I have to go back to it. That plus Heptapod (fork of GitLab with Mercurial support) — it’s very nice indeed. I count myself lucky to mainly contribute to a project where we use all of this.

It’s a shame there’s still nothing quite like GitHub for Mercurial (anymore), where anyone can just sign up and create repositories. Heptapod has a public instance for FOSS, but it requires approval to create projects. There’s also a separate hosted instance for basically anything, but it’s commercial and costs money. One can also self-host, but GitLab is not exactly lightweight, and other solutions aren’t as integrated with evolution features.


I haven't tried it in a while, but mercurial supports reading and writing to git repos: https://wiki.mercurial-scm.org/HgGit and its page says that https://wiki.mercurial-scm.org/GitExtension is bundled, but doesn't handle all of git's features


why? I had to stop using it because no one else would, and the various centralized services dropped support for it. but it handled branching and merging much better, was easier to pick up, and was less likely to trash your local checkout.

maybe if someone rewrote it in rust it would be sexy again? rurcurial?


> maybe if someone rewrote it in rust it would be sexy again?

They have and it's called jujutsu :-)

https://github.com/jj-vcs/jj

OK, it's not a Mercurial clone, but it did take some features from it, and using it will feel more like Mercurial than git. And you can use it on git repositories, so you can have your cake and eat it too.


I think the loss of the google and bitbucket repositories was the main problem - i know that took the heart out of me for doing foss development. i can deal with git (shit, i can deal with rcs), but i don't like it.




Gitbutler is great.


You first. :)


it is already pretty good and far better than svn, mercurial




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

Search: