Live data from Hacker News

A better merge workflow with Jujutsu

ofcr.se

41–50 of 93 posts

Re: A better merge workflow with Jujutsu

#41

> Using Jujutsu, “amending a commit” also produces a new commit object, as in Git, but the new commit has the same change ID as the original. This is confusing to me, though to be fair I'm a "git expert" by trade. If you're amending a commit surely the "change" has changed so the change ID should also change? If the "change" isn't tracking the actual changes then what could it be tracking? Overall I think this is jus…

There’s still a git-compatible commit ID which changes along with the contents. There’s also an immutable revision/change identifier that persists even as you continue working on it.

This works extremely well in practice and makes rebase-heavy workflows practical even when collaborating with others.

Re: A better merge workflow with Jujutsu

#42

the core issue with GIT is this: it requires cognitive overhead. JJ doesn't seem to solve that.

Having used both, jj imposes dramatically less cognitive overhead.

I was (am?) a git expert and power user. In a month I began trusting jj to a level I never did after using git shortly after its first official releases. I “blindly” undertake repo changes that I’d double or triple check before doing in git.

It’s better to a degree I never would have believed before I gave it a shot.

Re: A better merge workflow with Jujutsu

#43
post #16

All these things just remind me how depressing it is that we all use this deeply flawed tool, git, and no one can get enough critical mass for a substantially better version.

humans are creatures of habit. fixing these flaws is not enough to motivate us onto something new, it has to be groundbreaking.

It's not a matter of habit but of widespread usage

If you're a developer, for almost every job or open source job you'll be required to use git, but I think most people long of moving away from it

Re: A better merge workflow with Jujutsu

#44
post #16

All these things just remind me how depressing it is that we all use this deeply flawed tool, git, and no one can get enough critical mass for a substantially better version.

> how depressing it is that we all use this deeply flawed tool, git

Maybe a change in perspective can help you be less depressed. I don't find git "deeply flawed"; on the contrary, it's an extremely useful tool with an easy to grasp data model. Some parts of it are quirky, sure, but I find it very easy to use productively in code bases small and large, private or shared.

It's such a huge improvement over what was used before, it can be a little weird for me to hear people complain so hard about git. But hey, some fresher perspective than mine surely exist.

Anyway, instead of thinking of git as deeply flawed, try to see it as a battle tested tool without which your job would suck in ways you can't even imagine.

You're standing on the shoulders of a giant, easily wielding its power, and it sounds like the wart you found on its chin is a huge catastrophe somehow. Find a way to appreciate the giant until a worthy successor inevitably emerges, and maybe things will seem a little less depressing. :)

Re: A better merge workflow with Jujutsu

#45
post #27
post #6

Earlier quoted context omitted.

> If you're amending a commit surely the "change" has changed so the change ID should also change? If the "change" isn't tracking the actual changes then what could it be tracking? The author is using newer terminology around "changes", but I prefer the older "revisions", as being less overloaded. But yes, the revision/change ID remains the same even if the commits underneath changes. `jj obslog` will show you the hi…

imo revision is worse. I feel like the best terms are patch id and patch revision id.

I am sad I read this, because patch is perfect, but I doubt they will change the language again.

Re: A better merge workflow with Jujutsu

#46

> Using Jujutsu, “amending a commit” also produces a new commit object, as in Git, but the new commit has the same change ID as the original. This is confusing to me, though to be fair I'm a "git expert" by trade. If you're amending a commit surely the "change" has changed so the change ID should also change? If the "change" isn't tracking the actual changes then what could it be tracking? Overall I think this is jus…

  …can be done with git, IMO easily, using worktrees
Like many things in git, the capability exists, but I would not call worktrees easy. The few times I have tried to play with worktrees resulted in enough friction that it felt safer to use a clone in a separate directory.

Re: A better merge workflow with Jujutsu

#48

Are Jujutsu users all using it from the command line ? Is there anything magit-like yet ? Or do you use magit with it ? Have you run into extra complexity and messes because of having two VCSes interacting in one working copy ?

Most are using it from the command line, but https://github.com/gulbanana/gg is an in-progress GUI.

I don't use collocated repositories, so I can't speak to your second question, but I rarely hear people complain about it on their Discord.

Re: A better merge workflow with Jujutsu

#49

Are Jujutsu users all using it from the command line ? Is there anything magit-like yet ? Or do you use magit with it ? Have you run into extra complexity and messes because of having two VCSes interacting in one working copy ?

Most are using it from the command line, but https://github.com/gulbanana/gg is an in-progress GUI. I don't use collocated repositories, so I can't speak to your second question, but I rarely hear people complain about it on their Discord.

Very nice, thank you!

Re: A better merge workflow with Jujutsu

#50
Related:

GG, a GUI for Jujutsu - https://news.ycombinator.com/item?id=39713896 - March 2024 (2 comments)

jj init – getting serious about replacing Git with Jujutsu - https://news.ycombinator.com/item?id=39232456 - Feb 2024 (110 comments)

Jujutsu: A Git-compatible DVCS that is both simple and powerful - https://news.ycombinator.com/item?id=36952796 - Aug 2023 (261 comments)

Jujutsu: A Git-compatible DVCS that is both simple and powerful - https://news.ycombinator.com/item?id=36371138 - June 2023 (1 comment)

Jujutsu – A Git-compatible DVCS that is both simple and powerful - https://news.ycombinator.com/item?id=30398662 - Feb 2022 (228 comments)

Post reply on HN