Reminder! Meeting TONIGHT!!! 11/19 Location: Technocopia, Topic: Jujitsu
Hey Everybody, We've got a meeting this WEDNESDAY. The fine folks at Technocopia have graciously allowed us to use their space on a non open hack night. Thanks!! Here are the details: Time: 7PM Date: 11/19 Location: Technocopia Virtual Location: https://meet.jit.si/WlugMA Topic: Jujitsu https://jj-vcs.github.io/jj/latest/ Fellow WLUGer Evan White is going to do a presentation about Jujitsu. While using the git internals it has a different workflow than the one us daily git users are used to. Evan is going to show off how he uses it and maybe convince a couple of us to give it a try! Afterward we'll head out for dinner and keep the conversation going! Hope to see you there! Tim. -- I am leery of the allegiances of any politician who refers to their constituents as "consumers".
We had a great discussion mostly about Jujutsu, and the philosophy of Git commit organization, giraffe violence, etc. This is the main resource that got me acquainted with jj https://maddie.wtf/posts/2025-07-21-jujutsu-for-busy-devs and otherwise jjui exposes a lot of jj functionality intuitively. I've also reviewed a lot of this more step-by-step comprehensive guide at https://steveklabnik.github.io/jujutsu-tutorial/. Here's a list of the auxiliary tools we looked at, which will require little extra config to set up with jj. Most of these can also be used with plain git. * Difftastic https://github.com/Wilfred/difftastic syntax-aware diff renderer * Mergiraf https://mergiraf.org/ resolves or narrows merge conflicts safely using syntax-aware algorithms * opencode https://opencode.ai/ a FOSS provider-agnostic TUI for AI coding (I am working on opencode features that closely integrate with my usage of jj) * jjui https://github.com/idursun/jjui a modal TUI with helpful hints Some more emerging topics from usage of jj: * Immutable changes: The log shows a blue diamond instead of an empty circle node for tree segments that are immutable, which protects shared history (usually remote-only branches) from all the methods you would normally use modify commits in jj. * Stacked pull requests: I don't wait for pull requests to be merged before I start working on more on top of their work. It's easy to rebase the stacked work for another PR when the first one gets merged. This does risk my time being spent on more code that gets thrown away if a PR is rejected, but writing and learning from code is not considered wasted time by me. * Optimizing the graph for review: We discussed the balance of whether the entire history should be preserved in Git, and I prefer to keep a balance of preserving history and splitting/squashing commits into more functional steps that can be easily reviewed by others. Jujutsu locally preserves the evolution of each change across the commits behind it, and has a rich undo system, so I don't lose my raw history that I might need to recover in anger. Still, I can intentionally organize commits with a balance of reviewability, preserving the intentions behind changes, demonstrating evolution of a large change, etc. * Megamerges: If I have any number of open and/or stacked pull requests that I want to test all together, I can set them as parents to a single merge commit. This is easy and conflict-free when they deal with different functional areas in a codebase, but finding 3+ sided merge conflicts can be a signal that I need to reconsider how I've organized my changes. * Absorb: For each hunk in a change, this jj command will automatically squash them into adjacent/overlapping hunks further up the tree. This allows you to hack away at the tip of the tree, then instead of choosing where to squash disparate edits, absorb will squash them into any non-immutable commit for you. This works for merged branches as well, so I can e.g. absorb doc changes into my docs PR branch, and absorb the feature changes into the feature PR branch. ________________________________ From: Tim Keller via WLUG <wlug@lists.wlug.org> Sent: Wednesday, November 19, 2025 5:14 PM To: Worcester Linux Users' Group General Discussion <wlug@lists.wlug.org> Cc: Tim Keller <turbofx@gmail.com> Subject: [WLUG] Reminder! Meeting TONIGHT!!! 11/19 Location: Technocopia, Topic: Jujitsu Hey Everybody, We've got a meeting this WEDNESDAY. The fine folks at Technocopia have graciously allowed us to use their space on a non open hack night. Thanks!! Here are the details: Time: 7PM Date: 11/19 Location: Technocopia Virtual Location: https://meet.jit.si/WlugMA Topic: Jujitsu https://jj-vcs.github.io/jj/latest/ Fellow WLUGer Evan White is going to do a presentation about Jujitsu. While using the git internals it has a different workflow than the one us daily git users are used to. Evan is going to show off how he uses it and maybe convince a couple of us to give it a try! Afterward we'll head out for dinner and keep the conversation going! Hope to see you there! Tim. -- I am leery of the allegiances of any politician who refers to their constituents as "consumers".
participants (2)
-
Evan White -
Tim Keller