Releases: abhinav/git-spice
Releases · abhinav/git-spice
v0.7.1
v0.7.0
This release contains significant changes to internal state management to prevent corruption.
If you run into any issues, please report them here.
Changed
- branch delete: Accept multiple branches for deletion.
- Branch selection widget is now smarter about prioritizing fuzzy matches.
Fixed
- branch create: Prevent creation of tracked branches with untracked bases as this leaves the storage in a corrupted state.
- repo init: Don't leave dangling branch references when trunk is changed.
- branch create: Don't commit staged changes if git-spice is unable to save the branch to its internal storage.
- branch onto: Don't rebase the branch if changing its base would corrupt the data store.
- github: Recognize remote URLs in the form
ssh://git@ssh.github.com:443/org/repo
. - repo sync: Fix case when many branches from the same stack are merged, and order of deletion causes a restacking error or conflict.
- repo sync: Reduce the number of redundant operations performed when processing multiple merged branches.
v0.6.0
Added
- Windows support.
Changed
- submit: If a CR for a branch is closed or merged, and the branch is submitted again, git-spice will now create a new CR for that branch instead of failing to update the existing CR.
- repo sync: Reduce the number of network requests made to check status of submitted branches.
- repo sync: Gracefully degrade for unsupported Git hosting services by looking for merged branches locally instead of attempting to make API requests and failing. This only works for merge commits and fast-forwards, but it makes it easier to use git-spice with non-GitHub remotes.
Fixed
- branch submit: Present template list in consistent order.
- branch create: Fix bug where aborting a commit would leave the repository in a detached HEAD state.
- repo sync: Don't warn about missing remote tracking branch if it was already deleted by a 'git fetch --prune' or similar operation.
- repo sync: Delete the correct tracking branch for renamed branches.
v0.5.2
Fixed
- submit: Fix outdated PR template being used when trunk is behind its remote ref.
- github: Fix outdated PR templates being used when templates used lower-cased file names.
v0.5.1
Fixed
- Support use with older Git versions by dropping use of a v2.33-only flag.
v0.5.0
Added
- submit: Add
spice.submit.publish
configuration to allow making--no-publish
the default. Use this to work with unsupported Git hosting services. - branch checkout: Add
spice.branchCheckout.showUntracked
configuration to always show untracked branches in checkout prompt. - branch create: Add
--[no-]commit
flag and accompanyingspice.branchCreate.commit
configuration to create stacked branches without committing changes. - submit: When importing existing CRs, also detect existing stack navigation comments and update them instead of posting duplicates. This will only work for comments posted git-spice v0.5 or newer.
Fixed
- submit: When submitting with
--no-publish
, don't fail if the repository is hosted in an unsupported Git hosting services. - {branch, upstack} onto: Always rebase commits after the operation--even if the branch's base already matches the target. This better matches user expectations when the branch and base diverge.
v0.4.0
This release adds support for configuring the behavior of git-spice
with use of the git config
command.
See https://abhinav.github.io/git-spice/cli/config/ for details.
Added
- cli: Support custom shorthands with the
spice.shorthand.*
configuration option. - submit: Support opting out or reducing navigation comment frequency with the --nav-comment flag.
The accompanyingspice.submit.navigationComment
configuration option may also be used instead. - log: Add a
spice.log.all
configuration option to default to--all
forgs ls
andgs ll
. - GitHub Enterprise: Allow setting the GitHub URL and API URL with the
spice.forge.github.url
andspice.forge.github.apiUrl
configuration options.
Changed
- GitHub Enterprise:
GITHUB_API_URL
is now optional. If not set, we'll guess it from the GitHub URL.
v0.3.1
Fixed
- branch submit: Fail if Git editor is explicitly unset and there's no fallback.
- branch create: Ensure auto-generated branch names are unique.
- branch create: Don't lose data if the branch cannot be created for any reason.
- Fix messages instructing use of 'gs branch restack' to use correct arguments.
v0.3.0
Added
- Authentication: If a secure storage is not available, fall back to plain text, but warn the user about it.
- gs branch submit: Add short form
-c
for the--fill
flag.
Removed
- branch delete: Drop short form
-f
for the--force
flag.
Fixed
- commit split: Fix bug where canceling the split would fail to revert to original state.
v0.2.0
Added
- Publish pre-built Linux ARM binaries.
- {branch, stack, upstack, downstack} submit: Add --force flag. This acts like 'git push --force'.
Changed
- cli: Show --help when run without arguments
Fixed
- branch submit: Fix incorrect warning about current branch not being tracked when --no-publish is used.
- branch submit: Fix bug where updating an open PR would overwrite changes pushed to it by others. Use --force to overwrite these changes.
- branch submit: Use the same editor used by Git for commit messages to author the PR body.
- branch submit: Allow Git editor to be a shell command, not just an executable name.
- {downstack, stack} edit: Use Git editor to edit list of branches.