Skip to content

Releases: VirtusLab/git-machete

v3.40.0

01 Apr 11:57

Choose a tag to compare

  • added: cd-into-temporary-worktree value for machete.traverse.whenBranchNotCheckedOutInAnyWorktree git config key (suggested by @andrii0lomakin)
  • changed: when a branch is behind remote (needs a pull), git machete traverse now skips rebase,
    just as it did already when branch is diverged from & older than remote (suggested by @lsierant)
  • fixed: when git machete traverse failed on a rebase within a worktree,
    in certain cases the warning message about changed directory didn't show up (reported by @lsierant)

v3.39.2

27 Mar 15:32

Choose a tag to compare

  • improved: interactive git machete go displays a branch layout as in status
  • fixed: interactive git machete go now fails immediately when stdout is not a TTY (e.g. when piped) instead of behaving chaotically
  • improved: user-facing messages in go, show, traverse for the case of single root (contributed by @mvanhorn)

v3.39.1

07 Mar 15:25
793629e

Choose a tag to compare

  • changed: whenever git-machete prints a path on Windows, the path is now POSIX-compatible (with /)
  • fixed: suggested update command in deprecation message for fork-point --override-to=... and --override-to-inferred
  • fixed: subtle bugs related to relative main/git directory paths when switching worktrees in traverse
  • improved: git merge-base results are written into .git/machete-merge-base-cache for faster retrieval in large repositories

v3.39.0

29 Jan 20:39

Choose a tag to compare

  • added: machete.traverse.whenBranchNotCheckedOutInAnyWorktree git config key to control the behavior
    when checking out a branch that is not checked out in any worktree (suggested by @a-harhar)
  • changed: github update-pr-descriptions --related, gitlab update-mr-descriptions --related,
    and all subcommands with -U/--update-related-descriptions flag now always update the entire stack (both upstream and downstream PRs/MRs);
    the description style still respects the machete.github.prDescriptionIntroStyle or machete.gitlab.mrDescriptionIntroStyle config setting
  • fixed: go first, go last, go root no longer fail when run in detached HEAD state; instead, a sensible default is selected
  • fixed: go (interactive mode) no longer fails when run in detached HEAD state; the interface is shown as usual
  • improved: advance now only suggests push when the branch is ahead of remote;
    for other sync-to-remote statuses (behind, diverged, in sync, untracked), a warning is displayed instead
  • improved: every time a branch is checked out, a Checking out <branch>... OK message is printed out for consistency

v3.38.1

05 Jan 14:07
aa457c5

Choose a tag to compare

  • added: a GitHub-viewable tutorial under docs/tutorial (suggested by @joeprivett)
  • fixed: Nix builds (reported by @ivanopagano)

v3.38.0

03 Dec 14:45

Choose a tag to compare

  • added: interactive terminal interface for checking out a branch, via git machete go (without a direction)
  • added: --no-rebase flag to slide-out command to skip rebasing downstream branches after sliding out
  • changed: root branches (branches without an upstream) can now be slid out; their children become new root branches
  • fixed: -y short option now works for github create-pr and gitlab create-mr commands (previously only --yes was accepted)

v3.37.1

17 Nov 12:34

Choose a tag to compare

  • improved: traverse now changes directory to the worktree where a branch is checked out, rather than failing (suggested by @lsierant)
  • fixed: use simple (rather than none) mode of squash merge detection in git machete discover, to keep parity with the IntelliJ plugin

v3.37.0

09 Oct 17:52

Choose a tag to compare

  • added: support for Python 3.14 (earlier versions of git-machete should also work on Python 3.14)
  • fixed: update glab CLI output parsing to support the latest PAT format and auth status output format (contributed by @max-nicholson)
  • fixed: fish completion for long options with an argument
  • added: --stop-after flag to traverse to stop the traversal after processing the specified branch (suggested by @chriscz)
  • added: --start-from flag of traverse now accepts branch names in addition to special values here, root, first-root (suggested by @chriscz)
  • improved: --start-from and --return-to flags of traverse also accept uppercase values like HERE or STAY
  • improved: also recognize .github/PULL_REQUEST_TEMPLATE (without .md) as a PR description path

v3.36.4

07 Aug 18:58

Choose a tag to compare

  • fixed: git-machete no longer crashing when branch name contains a @ (reported by @brandtdaniels)
  • improved: more GitHub PR description template files are recognized (like .github/PULL_REQUEST_TEMPLATE.md or docs/pull_request_template.md)

v3.36.3

21 Jul 20:59
bc4533e

Choose a tag to compare

  • added: release of git-machete snap to arm64 (requested by @jeff-scifin)