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.73.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
Fixed
- wt remove refuses a registered path that now holds a different repository: A clone made at a stale registration's path was removed whole, uncommitted work included — and wt routed the user there, since the dirty gate read the occupant's files as this worktree's and offered --force as the cure. Removal now compares the directory's git dir against this repository's; --force waives uncommitted changes, not the check for whose directory it is. (#3785)
- The Nix flake names three systems, dropping Intel macOS: nixpkgs drops x86_64-darwin in 26.11, so the flake would stop evaluating there once flake.lock advances past it. (Breaking: nix build, nix run, and the home-manager module no longer resolve on Intel macOS. Release binaries are unaffected and still ship for it.) (#3776)
- NO_COLOR and a redirected stream reach every surface: Escapes still landed in progressive wt list, -v diagnostics, clap's error tips, and parts of stderr — the deprecation warning, the wt config update preview, the [y/N] prompt — so a redirected log carried escapes on one line and not the next. Color now resolves in one place. (#3777, #3771)
- A trailing separator no longer hides the branch: Git's ref format forbids a name ending in /, and shell completion produces exactly that spelling whenever a docs directory sits beside the branch, so wt switch docs/ never had a candidate. Selectors are normalized before resolution now — wt remove, merge targets, --base, and the pre-switch hook's target alike. (#3785)
- A path holding no worktree is reported as a path: wt remove ../repo.ghost answered No branch named … and pointed at a listing it could never appear in; wt switch and wt merge offered --create <path>, which git rejects; and wt config state marker set --branch <path> silently stored state keyed by a path. (#3773, thanks @judewang for reporting)
- A failed GitLab project lookup carries glab's own verdict: wt switch mr:<n> on a fork MR answered a 401, a 404, and a network failure with the same Failed to fetch project 456, swallowing the output every other remote_ref failure path forwards. A non-project response body now says so too. (#3799)
- A deleted-and-recreated worktree directory is reported, not leaked as git's exit 128: An rm -rf followed by a mkdir passes the Path::exists() probe, so wt switch, wt merge, wt step push, and wt remove walked into a raw git failure. All four now name the missing worktree and the git worktree prune that clears it. (#3785)
Internal
- Library API rework (Breaking library API): cargo-semver-checks fails four lints — GitError gained WorktreeNotFoundAtPath and WorktreePathNotOurs, shifting seven later discriminants, its DetachedHead variant gained a worktree field, ResolvedWorktree gained NoWorktreeAtPath, and Repository::resolve_worktree_name was removed. (#3785, #3773)
- Tests and benches spawn a pinned wt binary: a concurrent cargo removes and recreates target/debug/wt as it uplifts, so spawns hit a one-off NotFound; every spawn now routes through a hardlinked pin. (#3784, #3792)
- The nix devShell and task setup-web install what the test suite drives: both were missing nushell, pwsh, and jq, which --features shell-integration-tests shells out to. (#3768, #3776)
- Benchmark fixtures reduced to two provenance-based bases: Generated builds a repository locally and Imported copies the pinned rust-lang/rust corpus, with worktree, branch, and remote-ref populations as parameters. (#3761)
Install worktrunk 0.73.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/max-sixty/worktrunk/releases/download/v0.73.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.73.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.73.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