#jjfzf β Public Fediverse posts
Live and recent posts from across the Fediverse tagged #jjfzf, 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 -
jj-fzf 0.38.0 is out! π
π― Auto-position on @ upon startup
π§ Updated commit message prompt for smaller LLMs
π Man page now includes F11 preview toggle docs
π Fixed SFX support for Ubuntu 22.04
π§ Fixed quoting for jj split
β οΈ Requires jj-0.38.0 and fzf-0.67.0
https://github.com/tim-janik/jj-fzf
#BuildInPublic #100DaysOfCode #Jujutsu #VCS #DevTools #jjfzf #OpenSource
-
π JJ-FZF 0.37.0 is out!
π Ctrl-T: Multi-line file type display in log view
π¬ Better commit messages via LLM
π Ctrl-ββ: Scroll commit log
ποΈ Alt-ββ: Scroll preview with more lines
π Ctrl-W: Toggle word diff format
π§Ή Ctrl-B: Cycle whitespace-ignore options
π Word-level merging in rebase
π€ Ctrl-P: Supports jj-pre-push
π·οΈ jj tag commands for tags
π LLM messages wrapped at 100 columns
β³ Bookmarks in Pending state
β¨οΈ Alt-ββ for home/end
π Fixed $EDITOR without quoting
βοΈ Exact:name syntax for bookmarks/tags
β‘ Parallel listing for speed
π Improved jj status handling
π‘οΈ Pre-commit hooks for code quality
π¦ Supports jj-0.37.0
β οΈ Requires fzf-0.67.0β¨ Tarball:
https://github.com/tim-janik/jj-fzf/releases/tag/v0.37.0π ChangeLog:
https://github.com/tim-janik/jj-fzf/compare/v0.34.0...v0.37.0#BuildInPublic #100DaysOfCode #Git #VCS #DevTools #Jujutsu #jjfzf #OpenSource
-
#DevLog: jj-fzf support for file-type diffs!
π Ctrl-T - Toggle file-type diff display in the log view
π Ctrl-S - Detect & support jj workspaces when generating commit messages via LLM
π Updated docs for new configuration settings
https://github.com/tim-janik/jj-fzf
#BuildInPublic #100DaysOfCode #Jujutsu #VCS #DevTools #jjfzf #OpenSource #Tech
-
#DevLog: jjβfzf gets smarter previews!
π§Ή New CtrlβB - cycle through whitespaceβignore options for the preview diff
π€ New CtrlβW - toggle lineβdiff vs wordβdiff for the preview diff
πΌοΈ Automatic wrapping for reparentβ―&β―rebase previews
https://github.com/tim-janik/jj-fzf
#BuildInPublic #100DaysOfCode #Jujutsu #VCS #DevTools #jjfzf #OpenSource #tech
-
#DevLog: jj-fzf got smarter rebase!
π οΈ Added support for Word-level merging to the rebase & duplicate dialog
π Filed Jujutsu PR#7842 to improve docs
π Better preview formatting with multi-line command display for rebase
π Added --ignore-immutable option to duplicate
https://github.com/tim-janik/jj-fzf
#BuildInPublic #100DaysOfCode #Jujutsu #VCS #DevTools #jjfzf #OpenSource
-
#DevLog: jj-fzf now supports pre-commit hooks!
π§ Bookmark pushing now use jj-pre-push via `jj push` for repos that have a .pre-commit-config.yaml file.
π The manual page has more details howto configure use of jj-pre-push.
π§Ή UI polish, disabled scroll offset in FZF to avoid confusing cursor movements
π€ Fixed "Broken pipe" race conditions in CI
https://github.com/tim-janik/jj-fzf
#BuildInPublic #100DaysOfCode #Git #VCS #DevTools #Jujutsu #jjfzf #OpenSource
-
π JJ-FZF 0.34.0 is out!
π§ Complete rewrite with new features:
π Alt-B: Bookmark/Tag manager
π§Ή Alt-Q: Squash multiple revisions
π Alt-S: Interactive restore
π Ctrl-F: Toggle fzf / live revset editing
π Ctrl-S: LLM-generated commit messages
π Ctrl-O: Improved operation log browserβ¨ Major improvements:
πΏ Divergent commit handling
β¨οΈ Column-major key binding layout
π Inject forgotten commits into history
π Support for jj-log multi-line templates
π Extended man page + LLM config infoβ οΈ Requires jj-0.34.0 and fzf 0.65.2
https://github.com/tim-janik/jj-fzf/releases/tag/v0.34.0
#100DaysOfCode #DevTools #Jujutsu #VCS #jjfzf #OpenSource #Tech
-
#DevLog: π JJCon 2025 starts now!
π₯ Watch remotely via GerritForgeTV or Google Meet.
Instructions howto watch remotely are on the wiki page:
https://github.com/jj-vcs/jj/wiki/JJ-Con-2025#100DaysOfCode #DevTools #Jujutsu #VCS
#jjfzf #OpenSource #Tech -
#DevLog: jj-fzf UI improvements! πΌοΈ
ποΈ New Evolog Dialog
β Ctrl-V: Show the Evolog for a Chang ID
β Evolog Ctrl-J: Inject historic commitsπ Smart Column Layout
β Overhauled the old crammed layout
β Dismissed justified formatting
β Implemented optimal column layout
β Settled on column-major key formatting
(Works best with Alt-* and Ctrl-* lists)β¨ Hotkey Highlighting
β Added highlight to key combos
β Improved spacing in hotkey listhttps://github.com/tim-janik/jj-fzf
#Jujutsu #VCS #jjfzf #BuildInPublic #100DaysOfCode #Git #CLI #DevTools #ShellScript #OpenSource #Tech
-
#DevLog: New jj-fzf Restore, LLM-powered commit messages and Oplog Revert!
β¨ Alt-S: Start Interactive Restore
βͺ Oplog Alt-V: Now Reverts Operations
π Smart Merge Commit Messages
β Ctrl-D now auto-generates merge commit messagesπ·οΈ New Bookmark Untrack / Push-New
π§ LLM-Powered Commit Messages
β Ctrl-S edits LLM-generated descriptions
β Supports #LLamacpp, #Gemini, #OpenAIπ§ Config & Docs
β Full LLM setup documented in man pagehttps://github.com/tim-janik/jj-fzf
#Jujutsu #VCS #jjfzf #AI #LLM #BuildInPublic #100DaysOfCode #Git #CLI #DevTools #ShellScript #OpenSource
-
#DevLog: jj-fzf man lists all keys now!
β¨οΈ Full key binding docs in man page
β All keys of jj-fzf and subcommands (oplog, bookmarks, rebase, reparent) are now documented in the manual page
β Manual page generation auto-extracts all key bindings from the individual CLI toolsπ οΈ Better git push safety
β Now catches and handles jj git push errors gracefullyhttps://github.com/tim-janik/jj-fzf
#BuildInPublic #100DaysOfCode #CLI #DevTools #Jujutsu #VCS #jjfzf #ShellScript #OpenSource
-
#DevLog: jj-fzf: Screencasts & E2E Tests! π
π§ Fixes & UX improvements
β Fixed missing bookmark separators
β New Oplog key bindings to stay on current operationπ₯ Pushed New Screencast Demos
β Oplog undo/redo, inject commit, restore repo (attached)
β Bookmark/tag editing, move, delete
β Revset editing with live reload
β Improved screencasting: key / description popups, improved reproducibilityπ§ͺ E2E Screencast Tests
β CI now runs screencasts and checks outcome
β Asciinema screencasts are downloadable CI artifacts
β New script render.sh to render screencasts to GIF/WebP/MP4
β New test-screencasts target in Makefile.mkhttps://github.com/tim-janik/jj-fzf
#Jujutsu #VCS #jjfzf #BuildInPublic #100DaysOfCode #Git #CLI #DevTools #OpenSource #ShellScript
-
#DevLog: jj-fzf now got advanced filtering!
β¨οΈ Ctrl-F for mode switching
β Toggle between fzf and revset inputπ fzf 0.65.2 required
β Updated CI and preflight checksπ Extended default commit history revset
β Show all refs + 7 ancestors of immutable_headsπ€ Bookmark push improvements
β New "Bookmarks & Tags" dialog
β Ctrl-P for safe remote push with dry-runhttps://github.com/tim-janik/jj-fzf
#Jujutsu #VCS #jjfzf #BuildInPublic #100DaysOfCode #Git #CLI #DevTools #ShellScript #OpenSource
-
#DevLog: Working on a major jj-fzf rewrite!
π― Live Revset editing (screencast)
π Based on #fzf-0.65 in multi-mode
π οΈ New field matching supports arbitrary jj log and jj diff configs
β¨ New picker options -c, +c, -r, +r, -s for commits, revisions, revset
π New dialogs for Rebase, Oplog, Reparent
π Updated install instructions in README
π Listed breaking changes in NEWS
https://github.com/tim-janik/jj-fzf
#Jujutsu #VCS #jjfzf #BuildInPublic #100DaysOfCode #CLI #DevTools #OpenSource
-
JJ-FZF 0.33.0 Release π
π οΈ New: jjβforeach.sh, AltβJ: Inject commits
π¦ Prepackaged man page, self extracting script (sfx)
β±οΈ Sync: fzf now waits for jj log to finish
β‘ Breaking: jjβ0.33 dependency
β οΈ Last version to support fzfβ0.44.1
π Updated: push deleted bookmarks
π‘οΈ Preserve history when deleting tags
π Fixes: evolog handling and jj undo stack
βοΈ Removed: `all:` prefix, old undo marker
π Check it out:
https://github.com/tim-janik/jj-fzf/releases/tag/v0.33.0#Jujutsu #VCS #jjfzf #CLI #OpenSource
#BuildInPublic #100DaysOfCode #DevTools -
#DevLog: jj-fzf improvements π οΈ
β‘ New jj-foreach.sh script for isolated revset modifications
π Swapping commits now follows via cursor down
π‘οΈ Upgraded to jj-0.33 and updated dependency checks
π§ͺ Migrated to native jj undo/redo logic#BuildInPublic #100DaysOfCode #Jujutsu #VCS #CLI #DevTools #ShellScript #jjfzf
-
#DevLog: Fixed Jujutsu tag deletion in jj-fzf β οΈ
π« The #Jujutsu #VCS sometimes deletes ::@ history when importing #git #tag deletions (see screenshot)
π‘οΈ jj-fzf will now force all commits to remain reachable when it deletes a bookmark or a tag
Related #Jujutsu #VCS discussion:
https://github.com/jj-vcs/jj/discussions/7248#discussioncomment-14135120 -
#DevLog: New jj-fzf SFX Archives π¦
π sfx.sh: Wrote a tiny utility that bundles a directory into one shell script, extracts it on the fly at runtime
π’ Integrated it into the CI so we now ship a jj-fzf #SFX by default
π Demo: https://github.com/tim-janik/jj-fzf/releases/tag/v0.32.0.nightly2508160046
#jjfzf #BuildInPublic #100DaysOfCode #CLI #VCS #Programming #DevTools
-
JJ-FZF 0.32.0 Release π¦
β¨ New features:
- Ctrl-W: Toggle between diff formats
- Alt+M: Multi-select mode with TAB selection
- Multi-mode support for abandon, backout, duplicate, squash, rebase
- Added `make distcheck`, installcheck, and manual page
- File summary in oplog history
- Emacs integration via contrib/suspend-with-shell.el, see:
https://testbit.eu/2025/jj-fzf-in-emacsπ οΈ Breaking changes:
- Depends on jj-0.32.0
- Alt-N now runs new-after with --no-edit
- Removed unused 'merging' command
- Preserve PWD in subshellsπ§ Improvements:
- Check deps in Makefile
- Build man pages with pandoc
- Auto-run CI for PRs and tagsπ Fixed:
- Installations in non-jj repos
- --version command outside jj reposπ Check it out:
https://github.com/tim-janik/jj-fzf/releases/tag/v0.32.0 -
#DevLog: jj-fzf π¬ Multi-Select Demo & Cleanups π§Ή
π₯ New screencast demonstrating multi-select mode
π¬ Lots of ffmpeg wrestling for an uploadable mp4
π οΈ Fixed screencast logic to use tmux popups
π§Ή Inspected and purged old branches -
Integrating jj-fzf into Emacs
https://testbit.eu/2025/jj-fzf-in-emacsβBuilt on jj and fzf, jj-fzf offers a text-based user interface (TUI) that simplifies complex versioning control operations like rebasing, squashing, and merging commits. This post will guide you through integrating jj-fzf into your Emacs workflow, allowing to switch between emacs and jj-fzf with a simple key combination.β
-
Seamless version control with
jj-fzf in Emacs!πΉοΈ Integrate jj-fzf into Emacs with one hotkey
π Add a hotkey to browse commit history per source code line
π§Ή Enable automatic snapshots with jj-undirty.el
Check out the full guide in this new blog post here:
https://testbit.eu/2025/jj-fzf-in-emacs#jjfzf #devtool #jujutsu #git #workflow #snapshot #programming
-
π New #Blog Post about JJ-FZF!
This post goes into the details of all new features in #jj-#fzf 0.25.0, usability improvements, compatibility issues, deprecation and also breakage. Better jj-log integration, a new script for email patches, an #Emacs hook for auto-snapshots, jj-describe with content diff, the new Evolog browser, privacy markers, and more...
The full blog post:
https://testbit.eu/2025/jj-fzf-0.25.0And happy committing! π
#jjfzf #jujutsu #git #devtools #opensourcesoftware #Programming
-
π‘ Just released #jj-#fzf 0.25.0! π‘
π» Ctrl+T: Dialog to browser Evolog
π Alt+J: Inject/recreate historic commit
π Ctrl+D: Describe now shows content diff
π§Ή jj-undirty.el: Auto-snapshot in #Emacs
π Alt-Z: Subshells now run in repo root
π New PRIVATE commit markers addedFull announcement:
https://github.com/tim-janik/jj-fzf/releases/tag/v0.25.0Have Fun - Feedback Welcome!
-
π€© Discovered a great article on jj!
It explains how #jj was designed around concurrency to allow repo syncing. It treats #conflicts as first-class concepts to be resolved later and allows sparse #worktrees plus #undo on all repo operations.
Jujutsu is great for the wrong reason
by Allen Li:https://www.felesatra.moe/blog/2024/12/23/jj-is-great-for-the-wrong-reason
-
Just uploaded new screencasts about jj-fzf!
jj-fzf is a command-line tool based on Jujutsu (#jj) that streamlines your #Git workflow. Screencasts now cover merging, splitting long commits, #rebase and multi-step undo:
https://github.com/tim-janik/tools/tree/master/jj-fzf
#jjfzf #versioncontrol #DVCS