Releases: timbrel/GitSavvy
2.44.3
2.44.2
2.44.1
2.44.0
Lots of fixes and small things went into this release but also some more notable stuff:
-
The branches dashboard has a new design, showing the age of the branches. It
also groups the branches by "distance" to the currently checked out branch.This can be toggled in the settings
group_by_distance_to_head_in_branch_dashboard
.If you had
sort_by_recent_in_branch_dashboard
set totrue
before, probably unset it
as it gives the nicest results with the new grouping feature. -
The diff view can switch between files:
[l]
to see a list of available
files.[N]
/[P]
to switch quickly between them. -
The rebase menu in the graph view learned to squash commits, and to copy or
extract commits to a new branch/ref.E.g. extract a hotfix to a new branch, based on origin and ready to push:
-
You can also walk-the-reflog in the graph using
[N]
and[P]
. That
basically lets you see previous versions of the current branch. -
The file view, e.g.
git: show recent revision of current file
, learned[l]
to see a list
of revisions to switch to, and[i]
to show the basic commit info as a tooltip.
Don't forget[n]
and[p]
to quickly navigate between file revisions.
2.43.0
Beside the typical fixes and glitches, especially the *
symbol in the graph view which denotes dirtiness was off quite often 🫣, we have ... well lots:
When you see a patch/commit...
Just like in the Repo History, [W]
for reword and [E]
for edit are now bound whenever you see a patch/commit or the line history. (#1821)
I also added a helper to copy (parts of) the commit message. This helper strips the leading 4 spaces and is available using the standard copy command, e.g. ctrl+c
on Linux and Windows. Pressing ctr+c
twice will get you the standard behavior. (#1823)
copy.helper.mp4
When you're in the Repo History/graph...
In the rebase menu we already offer "Apply fix to " when the cursor is on a fixup or squash commit. This is now also available when the cursor is on the "base" commit. We basically search upwards then. (#1820)
For convenience, there are now "Compare with" and "Diff against" previous tip commands in the same menu. The previous tip is also decorated properly:
The diff views...
Typically diffs show two sides, a and b, in red and green at the same time. For the inline diff I added shortcuts, [a]/[b]
to hide and show one of the sides. This comes in handy for complicated diffs to quickly switch between the previous and the next state. (#1830)
inline.diff.a-b.switch.mp4
For the standard diff, the navigation changed slightly as we now also jump and select "chunks". These are the subparts of what is called a hunk. (#1829) Nit: when you navigate around, the status bar shows where you are in the typical n/m
format. (#1827)
Here is a picture of Santa and a tree
🎄🧑🎄
and here is a random link
https://paypal.me/herrkaste
Sincerely,
😘
2.42.2
2.42.1
2.42.0
This release mostly consists of bug- and glitch-fixes you might not even noticed.
Few notable changes:
-
GitSavvy's output panel now supports progress information. This was trickier than I thought it
would get, and especially makes "cloning" or "rebasing" much nicer to look at. -
In the commit view, "select all" (e.g.
ctrl+a
) now selects just your commit message and not the
help text and diff below anymore. That only applies when the cursor is within the message of
course.ctrl+a
twice will still select the whole buffer. -
Forking a GitHub repository will now by default only copy the default branch. This is
explained on their blog.
However, this is also pluggable, please refer to GitSavvy's settings.
💕ly greetings
2.41.0
Minor, quality-of-life improvements
- Improved cursor placement after staging, unstaging, etc., in the diff view for better orientation.
- When transitioning from a normal view (buffer) to the diff view, the just edited hunk is now
placed and shown automatically (if applicable). We had this for the inline diff view like
forever and now also for the standard diff view. This is even more interesting if you added a
key binding
{
"keys": ["ctrl+shift+."],
"command": "gs_diff",
"args": { "current_file": true }
},
Less minor
In the commit message view, you can now unstage directly even in the -a
(all) mode, completing this feature set.
In the Repo History (graph) views,
- an overview mode has been added, triggered by pressing
[s]
. This mode hides all commits and
only displays branch tips and reachable tags. (In this mode, pressing[a]
will also hide the
tags!) - an asterisk (
*
) afterHEAD
now indicates that the repository is currently dirty. For example,
it will print(HEAD* -> master)
now. 😐😏 - Special branches in a repository are now marked with a special syntax scope, allowing you to
assign a different color to them. The branch names that are considered special are:
(master|main|dev|trunk)\b
, and the scope is named
constant.other.git.branch.special.git-savvy
.
Note that you need to adjust your color scheme to see any change; GitSavvy will not modify it
automatically.
A picture to demonstrate the new features:
Sincerely,
😘
You can send some virtual coffee too: https://paypal.me/herrkaste
2.40.0
So we're on the new ST4/python38 runtime.
And also:
-
For History views, we now limit the number of lines we draw which obviously helps on large repos (f8b4cbc). We also truncate the graph-art if it gets messy.
-
We now show the remotes ordered by their definition in the repos config file, not by name. That means usually
origin
is now the first entry. -
There is a new setting
only_ask_to_annotate_versions: true
which prevents asking for messages/annotations for tags that appear to be used locally only. T.i. if they don't look like versions (e.g. "2.23.1", "2022.11.12") we don't ask for the message anymore. (#1737)