Aquesta és una versió anterior. La versió actual és la v0.81.0. worktrunk v0.81.0 · Data de publicació:
Fitxers d’instal·lació v0.52.0
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| 64 bits | ZIP → Portable | — | — | github.com | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
Release Notes
Improved
- wt step tether: New [experimental] operation that runs a command in its own process group and kills the whole group when the command exits or its worktree is removed (a 250ms portable poll — killpg on Unix, taskkill /T /F on Windows). A single post-start hook (wt step tether -- npm run dev) replaces the usual post-start-to-launch / pre-remove-to-stop pair, and unlike pre-remove it also cleans up after a git worktree remove, an rm -rf, or a crashed hook — the leak path that eventually saturates macOS fseventsd. Arguments after -- run directly with no shell, matching wt step for-each. (#2785)
- Gemini CLI extension: Worktrunk now ships a Gemini CLI extension for wt list activity tracking, installable with gemini extensions install max-sixty/worktrunk. The extension's manifest, hooks, and skills resolve at the repo root, so the GitHub-name install path works without a local clone. (#2803, #2807, thanks @rafavital for the request in #2763)
Fixed
- Project hooks are frozen at the approval gate: A project-defined pre-*/post-* hook command was selected from .config/wt.toml twice — once to build the approval prompt, once at execution — and the operation itself mutates state between the two reads (a merge moves the target ref, an auto-rebase rewrites the feature config, a removal scrubs the worktree, git worktree add materializes a --create worktree). The second read could select a command the user never approved; on a freshly cloned repo that is unapproved code execution. The gate now freezes the command set into an immutable plan that the executor consumes verbatim, so post-operation hooks can never run an unapproved command. Behavior is otherwise unchanged, and wt merge --no-hooks (or a declined/empty plan) now returns before loading approvals, so a malformed approvals.toml no longer aborts a command that had nothing to authorize. (#2806)
- Declining the wt merge commit-append no longer skips hooks: When a project's pre-merge/post-merge hooks were already approved, wt merge bundled the commit-message append into the same prompt; declining the lone append prompt skipped every hook for that run even though the user only meant to skip the append. The append is now gated on its own path (the same one wt step commit/wt step squash use), so declining it drops only the append. On a fresh repo where both the hooks and the append are unapproved this is now two prompts instead of one bundled prompt. Decline messages are also canonicalized across merge, remove, prune, and switch (Commands declined, … without hooks). (#2802)
- Windows wt step prune .git/config race: wt step prune could intermittently fail on Windows with unable to access '.git/config': Permission denied — its parallel branch-integration checks read .git/config while an inline git branch -D rewrote it via git's lockfile rename, which on Windows briefly blocks concurrent readers. Branch-integration reads are now excluded from overlapping the git branch -D that rewrites config. (#2808)
Install worktrunk 0.52.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/max-sixty/worktrunk/releases/download/v0.52.0/worktrunk-installer.sh | sh && wt config shell install
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/max-sixty/worktrunk/releases/download/v0.52.0/worktrunk-installer.ps1 | iex"; git-wt config shell install
Install prebuilt binaries via Homebrew
brew install worktrunk && wt config shell install
Download worktrunk 0.52.0
────────────────────────────────────────────────┬───────────────────┬─────────────
File │Platform │Checksum
────────────────────────────────────────────────┼───────────────────┼─────────────
worktrunk-aarch64-apple-darwin.tar.xz │Apple Silicon macOS│checksum
────────────────────────────────────────────────┼───────────────────┼─────────────
worktrunk-x86_64-apple-darwin.tar.xz │Intel macOS │checksum
────────────────────────────────────────────────┼───────────────────┼─────────────
worktrunk-x86_64-pc-windows-msvc.zip │x64 Windows │checksum
────────────────────────────────────────────────┼───────────────────┼─────────────
worktrunk-aarch64-unknown-linux-musl.tar.xz │ARM64 MUSL Linux │checksum
────────────────────────────────────────────────┼───────────────────┼─────────────
worktrunk-x86_64-unknown-linux-musl.tar.xz │x64 MUSL Linux │checksum
────────────────────────────────────────────────┴───────────────────┴─────────────
Install via Cargo
cargo install worktrunk && wt config shell install
Install via Winget (Windows)
winget install max-sixty.worktrunk && git-wt config shell install
Install via AUR (Arch Linux)
paru worktrunk-bin && wt config shell install