Path to this page:
./
devel/git-branchless,
High-velocity, monorepo-scale workflow for Git
Branch: CURRENT,
Version: 0.10.0,
Package name: git-branchless-0.10.0,
Maintainer: pkgsrc-usersgit-branchless is a suite of tools which enhances Git in several ways. It makes
Git easier to use, both for novices and for power users.
Examples:
- git undo: a general-purpose undo command.
- The smartlog: a convenient visualization tool.
- git restack: to repair broken commit graphs.
- Speculative merges: to avoid being caught off-guard by merge conflicts.
- Patch-stack workflows: strong support for patch-stack workflows as used by
the Linux and Git projects, as well as at many large tech companies.
- Prototyping and experimenting workflows: strong support for prototyping and
experimental work via divergent development.
- git sync: to rebase all local commit stacks and branches without having to
check them out first.
- git move: The ability to move subtrees rather than sticks while cleaning up
old branches, not touching the working copy, etc.
- Anonymous branching: reduces the overhead of branching for experimental work.
- In-memory operations: to modify the commit graph without having to check out
the commits in question.
- git next/prev: to quickly jump between commits and branches in a stack.
- git sw -i/--interactive: to interactively select a commit to switch to.
It provides faster operations for large repositories and monorepos,
particularly at large tech companies.
Master sites:
Filesize: 526.813 KB
Version history: (Expand)
- (2024-10-16) Updated to version: git-branchless-0.10.0
- (2024-07-31) Updated to version: git-branchless-0.9.0
- (2024-05-29) Updated to version: git-branchless-0.8.0nb5
- (2024-05-06) Updated to version: git-branchless-0.8.0nb4
- (2023-11-08) Updated to version: git-branchless-0.8.0nb3
- (2023-10-25) Updated to version: git-branchless-0.8.0nb2
CVS history: (Expand)
2023-11-08 14:21:43 by Thomas Klausner | Files touched by this commit (2377) |
Log message:
*: recursive bump for icu 74.1
|
2023-10-25 00:11:51 by Thomas Klausner | Files touched by this commit (2298) |
Log message:
*: bump for openssl 3
|
2023-10-21 20:57:15 by pin | Files touched by this commit (1) |
Log message:
devel/git-branchless: fix build with new libgit2
Switch to vendored libgit2 to avoid mismatches.
|
2023-08-30 10:30:17 by pin | Files touched by this commit (12) | |
Log message:
devel/git-branchless: update to 0.8.0
v0.8.0: build: delete git-branchless-testing crate
The git-branchless-lib crate has a dev-dependency on git-branchless-testing,
and git-branchless-testing has a dependency on git-branchless-lib, inducing
a circular dependency that means they can't be published to crates.io.
This commit collapses them into the same crate again to resolve this circular
dependency.
|
2023-04-26 13:36:25 by Thomas Klausner | Files touched by this commit (6) |
Log message:
git-branchless: fix build with latest libgit2
Bump PKGREVISION.
|
2023-04-19 10:12:01 by Adam Ciarcinski | Files touched by this commit (2359) | |
Log message:
revbump after textproc/icu update
|
2023-03-17 22:20:59 by pin | Files touched by this commit (3) | |
Log message:
devel/git-branchless: update to 0.7.1
[0.7.1] - 2023-03-13
Added
- (#830) Added `git branchless install-man-pages` command to generate and
install man-pages.
Fixed
- (#844) Fixed build for NetBSD.
[0.7.0] - 2023-03-01
Added
- (#646) `git amend` now supports a `--reparent` option to adjust the contents
of a commit while keeping the children commits exactly the same.
- (#686) `git branchless init` will now populate the internal commit graph
structure, rather than waiting for the first invocation of a `git branchless`
subcommand.
- (#725) Added `siblings()` revset function to determine the siblings of a
given commit.
- (#725) Added an `-I`/`--insert` option to `git record` to insert the new
commit before all of the current commit's children.
- (#763) Added a `-d`/`--detach` option to `git branchless switch` to switch to
to a branch without checking it out.
- (#766) Added a `git test fix` subcommand to apply formatters/linters/etc.
to a set of commits.
- (#777) Added the `--search` option to `git test run` to search a set of
commits using linear or binary search for the first commit(s) which cause
the tests to fail.
- (#777) `git test run` now aborts the overall test run when a test returns
exit code `127`.
- (#777) `git test run` now sets the `BRANCHLESS_TEST_COMMIT` and
`BRANCHLESS_TEST_COMMAND` environment variables when running the test command.
- (#785) Added `tests.passed()`, `tests.failed()`, and `tests.fixable()`
revset functions, whose results are populated by `git test`.
- (#790) Added the `--reverse` option to `git smartlog`.
Changed
- (#730) BREAKING: The default revset for `git reword` is now `stack() | @`
instead of `@`, to simultaneously reword all commits in the current stack.
- (#763) BREAKING: `git branchless switch` no longer implicitly opens the
interactive commit selector when no target is provided. You must explicitly
pass `-i`/`--interactive` to do so.
- (#801) BREAKING: The parameter to `git record` has been renamed from
`-b`/`--branch` to `-c`/`--create`.
- (#685) `git submit` now colorizes the names of the affected branches.
- (#763) Running `git branchless switch` with no arguments will switch to the
branch associate with the current commit, if there is exactly one such branch
and the `branchless.navigation.autoSwitchBranches` configuration variable is
set to `true`.
- (#791) The name for the temporary file created by `git reword` is now of the
form `COMMIT_EDITMSG-*.txt`, which your editor can use to detect it as a Git
commit message file.
- (#811) The styling for `git test` progress and output has been changed.
Fixed
- (#646) Adjusted messaging during merge conflicts with `git move --in-memory`
to be more accurate.
- (#647) `git test run` now recovers from previously-failed tests instead of
failing indefinitely in future runs.
- (#670) `git submit` no longer force-pushes the current branch in the
circumstance that all branches are currently up-to-date.
- (#688) `git amend` now respects the `--merge` option.
- (#722) `git reword` now supports invoking editors with spaces in their names.
- (#724) `git branchless init` now installs a `post-applypatch` hook, for
users of `git am`.
- (#742) `git branchless init` now respects a leading `~` in the
`core.hooksPath` configuration 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 sync` will no longer attempt to resolve merge conflicts unless
you pass `--merge`. Previously, this could happen when attempting to sync
merge commits.
|
2023-01-12 13:51:30 by pin | Files touched by this commit (5) |
Log message:
devel/git-branchless: import package
git-branchless is a suite of tools which enhances Git in several ways. It makes
Git easier to use, both for novices and for power users.
Examples:
- git undo: a general-purpose undo command.
- The smartlog: a convenient visualization tool.
- git restack: to repair broken commit graphs.
- Speculative merges: to avoid being caught off-guard by merge conflicts.
- Patch-stack workflows: strong support for patch-stack workflows as used by
the Linux and Git projects, as well as at many large tech companies.
- Prototyping and experimenting workflows: strong support for prototyping and
experimental work via divergent development.
- git sync: to rebase all local commit stacks and branches without having to
check them out first.
- git move: The ability to move subtrees rather than sticks while cleaning up
old branches, not touching the working copy, etc.
- Anonymous branching: reduces the overhead of branching for experimental work.
- In-memory operations: to modify the commit graph without having to check out
the commits in question.
- git next/prev: to quickly jump between commits and branches in a stack.
- git sw -i/--interactive: to interactively select a commit to switch to.
It provides faster operations for large repositories and monorepos,
particularly at large tech companies.
|