| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| git-branchless-v0.7.0-x86_64-apple-darwin.tar.gz | 2023-03-02 | 6.2 MB | |
| git-branchless-v0.7.0-x86_64-pc-windows-msvc.zip | 2023-03-02 | 4.7 MB | |
| git-branchless-v0.7.0-x86_64-unknown-linux-musl.tar.gz | 2023-03-02 | 8.0 MB | |
| README.md | 2023-03-02 | 5.3 kB | |
| v0.7.0 source code.tar.gz | 2023-03-02 | 440.1 kB | |
| v0.7.0 source code.zip | 2023-03-02 | 531.6 kB | |
| Totals: 6 Items | 19.8 MB | 0 | |
To install or update git-branchless, run the following:
$ cargo install --locked git-branchless
$ git branchless init # in your repository
If you haven't already taken the user survey, please consider doing so!
Release highlights
- New features for
git testto help working with patch stacks. See the postgit test fix,git test run --searchfor details and demos. git testnow implements afixsubcommand to run formatters/linters/etc. on each commit and apply their changes.git test runnow implements linear, reverse-linear, and binary search.- There are breaking changes to
git reword,git switch, andgit record; see below.
Changelog
Added
- (#646)
git amendnow supports a--reparentoption to adjust the contents of a commit while keeping the children commits exactly the same. - (#686)
git branchless initwill now populate the internal commit graph structure, rather than waiting for the first invocation of agit branchlesssubcommand. - (#725) Added
siblings()revset function to determine the siblings of a given commit. - (#725) Added an
-I/--insertoption togit recordto insert the new commit before all of the current commit's children. - (#763) Added a
-d/--detachoption togit branchless switchto switch to a commit without checking out any associated branches (as might happen due to thebranchless.navigation.autoSwitchBranchesconfiguration variable), or to switch to a branch without checking it out. - (#766) Added a
git test fixsubcommand to apply formatters/linters/etc. to a set of commits. - (#777) Added the
--searchoption togit test runto search a set of commits using linear or binary search for the first commit(s) which cause the tests to fail. - (#777)
git test runnow aborts the overall test run when a test returns exit code127. - (#777)
git test runnow sets theBRANCHLESS_TEST_COMMITandBRANCHLESS_TEST_COMMANDenvironment variables when running the test command. - (#785) Added
tests.passed(),tests.failed(), andtests.fixable()revset functions, whose results are populated bygit test. - (#790) Added the
--reverseoption togit smartlog.
Changed
- (#730) BREAKING: The default revset for
git rewordis nowstack() | @instead of@, to simultaneously reword all commits in the current stack. - (#763) BREAKING:
git branchless switchno longer implicitly opens the interactive commit selector when no target is provided. You must explicitly pass-i/--interactiveto do so. - (#801) BREAKING: The parameter to
git recordhas been renamed from-b/--branchto-c/--create. - (#685)
git submitnow colorizes the names of the affected branches. - (#763) Running
git branchless switchwith no arguments will switch to the branch associate with the current commit, if there is exactly one such branch and thebranchless.navigation.autoSwitchBranchesconfiguration variable is set totrue. - (#791) The name for the temporary file created by
git rewordis now of the formCOMMIT_EDITMSG-*.txt, which your editor can use to detect it as a Git commit message file. - (#811) The styling for
git testprogress and output has been changed.
Fixed
- (#646) Adjusted messaging during merge conflicts with
git move --in-memoryto be more accurate. - (#647)
git test runnow recovers from previously-failed tests instead of failing indefinitely in future runs. - (#670)
git submitno longer force-pushes the current branch in the circumstance that all branches are currently up-to-date. - (#688)
git amendnow respects the--mergeoption. - (#722)
git rewordnow supports invoking editors with spaces in their names. - (#724)
git branchless initnow installs apost-applypatchhook, for users ofgit am. - (#742)
git branchless initnow respects a leading~in thecore.hooksPathconfiguration variable. - (#743)
git sync, etc. now correctly clean up remote branch information for branches which have been merged upstream. Previously, the remote branch information would be left behind, which would cause future branches with the same names to incorrectly become associated with the old remote branch. - (#764)
git syncwill no longer attempt to resolve merge conflicts unless you pass--merge. Previously, this could happen when attempting to sync merge commits.
New Contributors
Thanks to the following first-time contributors!
- @samueltardieu made their first contribution in https://github.com/arxanas/git-branchless/pull/742
- @wabain made their first contribution in https://github.com/arxanas/git-branchless/pull/791
If you're interested in contributing, check out the Developer Guide in the Wiki, or post in the Discussions or Discord server to ask any questions.