#jujutsu — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #jujutsu, aggregated by home.social.
-
-
🚀 JJ-FZF 0.42.0 is out!
⚔️ Alt-L: interactive conflict resolution with jj resolve
🔄 Ctrl-R: rewrite change ID (jj metaedit --update-change-id)
📜 Ctrl-O: keep showing *all* oplog changes (jj-0.40+)
🧠 Cleaner LLM commit message generation
📝 Supports jj describe --editor (jj-0.42)
⏱️ Error pause delays configurable via $JJFZF_ERROR_DELAY
🔧 Fixed bookmark startup position & quoting⚠️ Requires jj-0.42.0, fzf-0.67.0, GNU Make ≥ 4.0, bash ≥ 5.1
🔗 Release:
https://github.com/tim-janik/jj-fzf/releases/tag/v0.42.0 -
#jujutsu now supports interactive absorb! 😍 You need to be in version >= v0.44. But still. I cannot express how many times I ran into trying to use `-i` on absorb as an error. Now it actually works!! 🥹
https://docs.jj-vcs.dev/latest/changelog/#:~:text=jj%20absorb,commit,-%2E
-
#Jujutsu jest... interesujące. To chyba najlepsze sformułowanie po tym artykule i innych materiałach (polecamy podpytać ChatGPT o różnice względem #Git i Jujutsu) - widać, że to narzędzie proponuje inny sposób pracy na repozytorium i inną filozofię. Warto znać, to na pewno.
https://www.stavros.io/posts/switch-to-jujutsu-already-a-tutorial/
-
The result that I needed in my #jujutsu config file was this:
I don't want jj to track main/master unless I do so explicitly (
track-default-bookmark-on-clone = false)I don't want jj to automatically track bookmarks at all (don't set
auto-track-bookmarks)I want jj to advance the bookmark as soon as I commit (
experimental-advance-branches)I want jj to only advance the bookmark in my branches (
experimental-advance-branches.enabled-branches = ["glob:work/myname/*"])I don't want jj to ever move the bookmark on main/master unless I do so explicitly (
experimental-advance-branches.disabled-branches = ["main"])in the case I accidentally push a not advanced bookmark, I want jj to have a more readable default autogenerated branch name based on the commit name without spaces and without single quotes in lowercase (
templates.git_push_bookmark = "\"work/myname/\" ++ description.first_line().replace(\" \", \"-\").replace(\"'\", \"\").lower()")
-
I've been trying #jujutsu (jj) for a while. It's an alternative frontend to git, but unlike other tools like lazygit, it actually changes the git workflow.
Essentially:
- there's no index/staging area
- changes are separate from commits
- because of the above two, all changes to files are tracked ("committed to jj") by default (in other words, the current commit is the latest change)
- there's no concept of current branch, you just move/advance the branch pointer (bookmark) to current change
- this also means you work on anonymous commits by default and only track the parent commit
- rebase and squash are actually not fucking miserable
- you can keep working while a rebase is marked as having a conflict
But there's two things I don't like about it:
- it pushes all created tracked branches by default
- you have to move the bookmark before pushing, otherwise pushing creates an autogenerated branch name
For the latter there's an experimental advance branches feature, I haven't investigated the first yet.
-
-
I haven’t really gotten the idea of #jujutsu before since I’m pretty happy with git, but the idea of not having to name things (branches, commits) kinda clicks with me so maybe I’ll try and give it a go!
-
RE: https://wandering.shop/@offby1/117048970918039631
This got me thinking it'd be worth writing this down: https://offby1.website/posts/how-i-jujutsu-bookmark-advance.html
tl;dr, this is how I have set up `jj bookmark advance`
-
#jujutsu #vcs still lots of fun to use (I've since updated my default tmux session config to stop popping out #git related panes like lazygit) but also still getting my head around best practices and ergonomics.
E.g., `jj bookmark advance` clearly prefers that your head/@ be a "real commit"; if you're sitting on an empty commit after a `jj new` or `jj commit` or etc, you have to remember to say `jj bookmark advance --to @-` which is easy to forget.
Conversely, jj's behavior of "@ contains your working copy as-is, there's no index/staging" means you're incentivized /not/ to be sitting on "real work" lest you accidentally perform the equivalent of `git commit --amend` every time you edit a file. (This bites me a lot! Especially for files that another tool is auto-updating like uv.lock, Pulumi.$env.yml etc.)
-
🌿 Mirrors Git diff-style commands: hunk diff, hunk show HEAD~1, file-to-file compare and patches from stdin
🔀 Auto-detects #Jujutsu and #Sapling checkouts and uses native revsets; can be set as pager for #Git, jj or sl
🎨 TOML config for theme, layout mode, VCS, line numbers and wrapping, plus custom themes inheriting from any built-in theme
-
#TIL: #jj #jujutsu grew a `bookmark advance` this past spring. Very cross I didn't even know about it until just now, given I only started using it this summer…
https://www.jj-vcs.dev/latest/cli-reference/#jj-bookmark-advance
Now glad I didn't even bother setting up the "usual" 'tug' alias!
-
Workflow changes I've made in the past 12 months, and am very happy with:
tmux → zellij
vim → neovim
git → jujutsu
notion → obsidianOf those, #jujutsu is the biggest improvement. If you use `git rebase` or `git stash` regularly, you're probably the kind of person who would love it too.
-
Evan's Jujutsu tutorial: New tutorial from an engineer with particular expertise
https://evmar.github.io/jjtut/
#versioncontrol #programming #jujutsu #git #vcs #jj #+ -
My (free, open source and human-written) book #jujutsu is almost complete.
I'm looking for reviewers. I'd be very grateful!
DM me if interested :) -
Hi All
Guide me please 😅
I'm using GitHub all these days to store files. I plan to move my files to open source platforms like codeberg,gitea etc. But I want a mirror of my codeberg like repo in GitHub etc, just as a backup.
2 ways I can think of:
1) Pushing to 2 remotes from my local
2) Mirroring one repo completely in another platform
Want ur opinion on these or any other methods I'm unaware of.
#git #jujutsu #jj #github #gitea #codeberg #forgejo #vcs #dvcs #repo -
The JuJutsu VCS gives me planning superpowers!
Here is how I use its revisions and flexible workflow to plan my work ahead and keep track of my progress.
Read more on my blog:
https://moskitohero.com/post/2026-06-30-how-i-use-jj-revisions-to-plan-my-work/
-
DJK Ju-Jutsu: Erfolgreiche Gürtelprüfungen – 25 Kinder und drei Dan-Prüfungen an einem Wochenende
(Pressemitteilung) Die Abteilung Ju-Jutsu des DJK Dudweiler blickt auf ein besonders erfolgreiches Prüfungswochenende zurück: 25 Kinder traten am vergangenen Wochenende zu ihren Gürtelprüfungen an – vom gelben Zipfel bis zum orangenen Gürtel. Alle haben bestanden! Auch auf Landeseb […]
-
Friendship ended (through deprecation) with `jj git push --allow-new`. Now `jj git push --named <branch>=<ref>` is my best friend. #jujutsu
-
Oh this is lovely! I'm starting to get the 'zen' of #jujutsu.
I had signing enabled and it was triggering my 1Password ssh agent every 5 minutes because my shell prompt was running jj status, which in jj-land updates the 'working' commit.
It turns out `jj sign` signs any mutable revision it can get its hands on, so I set signing.behavior = 'drop' (never sign anything), which keeps the noise down because Claude will squash, split and reorder jj revisions like a boss, then my sync-to-GitLab dance is:
jj tug && jj sign && jj git push
(tug is an alias to move the 'main' bookmark up).
All commits signed, no ssh overhead for in-flight changes.
You're welcome. Yes I know I should blog this. And the rest of my Claude <3 jj workflow.
-
#jujutsu tutorial by Steve Klabnik
-
Started messing with #jujutsu #jj. Has some very neat ideas as expected.
Git interop is a little clunky still, though hopefully I just haven't discovered quite the right commands ("new technology, tutorials are outdated the moment they're published" problems…)
Eg, a rapid fire "fuck, why is my CI/CD not workin right" workflow. In Git, having already done a 'checkout mybranch' that morning:
- git commit -m 'lmao'
- git pushIn jj, because you're never "on" a branch:
- jj commit -m 'lmao' (or have done a 'describe' earlier, and do a 'new' now)
- jj bookmark advance mybranch --to @-
- jj git push --bookmark mybranchOver and over! Obviously I could shell alias this, but.
-
@alcarney Not an `eshell` solution but if you are looking to use `jj`from Emacs you might be interested in Majutsu, particularly if you used and liked Magit as it claims to be "Magit for Jujutsu"
-
Dear #git / #jujutsu / #jj / #lazygit #lazyweb (pun not intended?),
I am gently interested in trying out `jj` sometime, but have invested /significant/ muscle memory in the lazygit TUI (which is flippin' awesome). Has anyone made that /specific/ transition successfully?
Eg,
- did you go back to fully shell-driven SCM actions using `jj`? (because jj is just that good?)
- did you switch to a more editor-plugin-focused workflow? (because one was on offer? btw I use vim)
- did you use lazygit+jj clones/etc like lazyjj (https://github.com/Cretezy/lazyjj)? (which looks non-slop but otherwise haven't tried yet)
- mystery fourth option? -
【再投稿】『劇場版総集編 呪術廻戦 懐玉・玉折』本予告|各配信サービスにて見放題配信開始 https://drama.io/893955/ #5月30日 #anime #entertainment #JJK #JUJU #jujutsu #jujutsukaisen #JUMP #movie #TOHO #アニメ #オフィシャル #キタニタツヤ #キャラクター #中村悠一 #五条 #五条悟 #伏黒 #伏黒恵 #伏黒甚爾 #公式 #内田雄馬 #劇場版総集編 #呪術 #呪術廻戦 #声優 #夏油 #夏油傑 #天内理子 #宣伝 #少年ジャンプ #懐玉•玉折 #戻れない青い春 #映画 #映画興行収入 #最強の2人 #東宝 #榎木淳弥 #櫻井孝宏 #永瀬アンナ #瀬戸麻沙美 #甚爾 #虎杖 #虎杖悠仁 #週刊少年ジャンプ #過去 #配給 #釘崎 #釘崎野薔薇 #青い春 #青のすみか
-
Blogged: jj fix 🩷 standard-clj
For the past few weeks, I've been using Jujutsu (jj) as my primary version control system instead of git.
jj fix is one of my favorite commands. It hooks up with formatter like prettier or standard-clj and formats the code and fixes the issue in the commits that introduced them, *without conflicts*.
https://www.mikkokoski.com/blog/jj-heart-standard-clj/index.html