You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Set advice.detachedHead to false as part of init process.
git undo: create transactions as part of events (rewrite, hide/unhide multiple, undo), and default to undoing an entire transaction at once. Allow toggling to non-transactional mode.
git restack should rebase entire branches at once, rather than individual commits at a time.
Auto-restack feature, to automatically run git restack whenever an operation abandons commits.
In particular, we probably only want to carry out the git restack if it would succeed. If it has merge conflicts, then we should just warn the user and have them fix it.
The post-commit hook should show the commit OID and message.
It may or may not be desirable for navigation commands (git next/git prev) to, when checking out to a commit, if it has exactly one branch associated with it, also check out that branch.
After git smartlog, if there are abandoned commits, suggest a hint to run git restack to fix them up.
Some kind of word-wrapping or truncation may be desirable for long commit messages, especially in narrow terminals.
Improve performance of git sl after rebase. In large repos, it can take several seconds to compute.
This could probably be done using the post-update hook. There should be something about the lattice merge-base structure which we can exploit to quickly calculate new merge-bases for all the visible commits, something like if mb(local, main) = x and mb(main, main') = x then mb(local, main') = x (but there are some edge-cases due to the fact that nodes can have multiple parents).
When a local branch tracks a remote branch, use the remote branch as the main branch. This way, the progress made on the local branch becomes visible by default in the smartlog.
Currently, git-branchless panics if you provide an ambiguous commit hash. (Example: de4cdcf365518 vs de4cdcf3126ad, both addressed by de4cdcf3.)
Preemptively check to see if a commit hash is ambiguous when rendering the smartlog? Prompt to resolve ambiguity? Assume that the object has to be of a certain type according to the operation (usually, it has to be a commit)? Maybe use this function https://docs.rs/git2/0.13.22/git2/struct.Object.html#method.short_id?
advice.detachedHead
tofalse
as part ofinit
process.git undo
: create transactions as part of events (rewrite, hide/unhide multiple, undo), and default to undoing an entire transaction at once. Allow toggling to non-transactional mode.git restack
should rebase entire branches at once, rather than individual commits at a time.git move
enhancements #34.git restack
whenever an operation abandons commits.git restack
if it would succeed. If it has merge conflicts, then we should just warn the user and have them fix it.git smartlog
afterwards.git gc
should show the number of garbage collected nodes.post-commit
hook should show the commit OID and message.git next
/git prev
) to, when checking out to a commit, if it has exactly one branch associated with it, also check out that branch.--branch
flag togit next
/git prev
#192.git smartlog
, if there are abandoned commits, suggest a hint to rungit restack
to fix them up.git sl
after rebase. In large repos, it can take several seconds to compute.post-update
hook. There should be something about the lattice merge-base structure which we can exploit to quickly calculate new merge-bases for all the visible commits, something likeif mb(local, main) = x and mb(main, main') = x then mb(local, main') = x
(but there are some edge-cases due to the fact that nodes can have multiple parents).git-revise
does this)git-branchless
panics if you provide an ambiguous commit hash. (Example:de4cdcf365518
vsde4cdcf3126ad
, both addressed byde4cdcf3
.)git next
andgit prev
should be able to move forward by a number of branches, not just by a number of commits.--branch
flag togit next
/git prev
#192.scm-record
features:The text was updated successfully, but these errors were encountered: