Repository navigation
Releases
gitmini v0.3.1
macOS: ad hoc signed .dmg installers for Apple Silicon and Intel, without notarization.
Windows: per-user -setup.exe installer (no administrator rights needed). Linux builds are paused for now.
See docs/code-signing-policy.md for the signature status of the Windows installer.
Automatic updates are signed with the gitmini updater key. Verify downloads with SHA256SUMS.
See docs/releases.md for installation and verification instructions.
gitmini v0.3.0
What's new
Rewriting and undoing history
- Reset the current branch to a commit. Right-click a commit in the graph and choose Reset
<branch>to here..., then pick Soft, Mixed, Keep or Hard. Soft, Mixed and Keep can be undone. Hard cannot, and the dialog says so. - Squash consecutive commits. Select two or more consecutive commits in the graph and choose Squash N commits.... You edit the combined message before anything is rewritten, and the squash can be undone.
- Tags. Create lightweight or annotated tags from a commit or from the + of the Tags section, delete them (with undo), push a single tag, and delete a tag on the remote when it clashes with yours. The Push dialog has a new Also push annotated tags option.
- Discarded files. Files and lines you discard are now kept, and you can restore the file as it was from the Recovery panel (Discarded tab, next to the reflog).
Day-to-day work
- Line-by-line staging. Select lines in a diff to stage, unstage or discard just those lines.
- Take ours or theirs in one step. Resolve a conflicted file from its right-click menu (
ofor ours,tfor theirs) or from the buttons in the diff. - Merge preview. Before a merge, the drop menu and the merge dialog tell you whether it would conflict, and in which files, without touching your repository. This needs Git 2.38 or later; with an older Git, gitmini says the preview is unavailable and the merge still works.
- File history and blame. Open the history of a file (optionally following renames) or blame it, from a diff, a file menu or the command palette.
- Automatic fetch. Settings → Fetch automatically fetches the open repository every 5, 15 or 30 minutes while the window is visible and idle, then offers to pull. It is off by default, it never asks for a password, and it backs off after an authentication error. The ahead/behind tooltip now shows when the last fetch happened.
- Sidebar filter and branch folders. Filter branches and tags (press
/in the list); branches namedfeature/...are grouped in folders. - Better diffs. Changed words are highlighted inside a modified line, and the number of context lines can be changed from the diff header or in Settings → Diff context.
- Smarter command palette. Fuzzy matching, recent commands first, and
@for branches,#for commits and/for repositories. - Network proxy. Settings → Proxy offers System, No proxy or Manual. It applies to HTTPS remotes and to updates. SSH remotes are not affected.
- New repository. A New repository dialog (welcome screen, tabs menu, command palette) creates a repository with an optional README and initial commit. It refuses to create a repository inside another one.
Fixes
- Hunk actions (stage, unstage, discard) are refused on files that are not valid UTF-8, instead of silently replacing bytes. Staging or discarding the whole file still works.
- Changes to tracked files that match an ignore pattern (force-added or vendored files) are now detected, so the status no longer goes stale.
- Windows: a Git identity set in your global configuration, or in a file it includes, is picked up without restarting gitmini. Cherry-pick and revert no longer keep failing with a missing identity.
- Windows: Git commands no longer flash a console window, and short write operations show a spinner with the operation name after a brief delay.
- A few leftover French strings in the English interface are now translated (toolbar, spinner, shortcut labels, error messages).
Performance
- Selecting a commit with many changed files is faster, and is cancelled when you select another commit. A 2,000-file commit went from about 1.0 s to 0.3 s in our benchmark.
- Refreshing the graph after an amend, reset or rebase no longer freezes the log, the status and the sidebar.
- An open diff is reloaded only when its own file changes, not on every change in the working tree.
Security
- The GitHub token is now sent only to Git commands that contact the configured GitHub host. Hooks, LFS and SSH commands for other remotes can no longer read it.
- The development bridge now rejects requests from other local web pages. This affects development setups only, not the installed application.
Downloads and signing
- macOS:
.dmgfor Apple Silicon (aarch64) and Intel (x64), ad hoc signed and not notarized. On first launch, allow gitmini in System Settings → Privacy & Security. - Windows:
x64-setup.exe(per-user, no administrator rights), not Authenticode-signed yet, so SmartScreen may show a warning. - Linux:
.AppImageand.deb(x64). - In-app updates are signed with the gitmini updater key and verified before installation, independently of operating-system code signing.
- Verify downloads with
SHA256SUMS, for exampleshasum -a 256 -c SHA256SUMS --ignore-missing. - gitmini requires Git 2.30 or later (2.38 or later for the merge preview).
See docs/releases.md for installation and verification details.
gitmini v0.2.0
What's new
- Initialize a repository from gitmini. Opening a folder that is not a Git repository now offers to initialize it instead of failing.
--repo=<path>command-line argument. gitmini acceptsgitmini --repo=<path>in addition togitmini <path>, so paths containing spaces or starting with a dash can be passed reliably.- Windows: per-user installer, no administrator rights. The Windows package is now an NSIS installer (
gitmini_0.2.0_x64-setup.exe) that installs under%LOCALAPPDATA%\Programs. Neither installation nor in-app updates require administrator rights or trigger a UAC prompt. It replaces the per-machine.msiof v0.1.0.
Fixes
- Windows: more reliable creation of the main window at startup (WebView2).
- Windows: deleted folders inside a repository are now detected by the file watcher.
- Windows: Git configuration changes made outside gitmini are always picked up, including rewrites that keep the same length (for example changing a branch's remote).
- Faster graph rendering in wide repositories: lanes that are entirely off-screen are no longer drawn.
Upgrading from v0.1.0 on Windows
v0.1.0 was installed per machine with an .msi. v0.2.0 installs per user, so we recommend uninstalling v0.1.0 from Settings → Apps before installing v0.2.0, to avoid keeping two copies. Your repositories are not affected.
Downloads and signing
- macOS:
.dmgfor Apple Silicon (aarch64) and Intel (x64), ad hoc signed and not notarized. On first launch, allow gitmini in System Settings → Privacy & Security. - Windows:
x64-setup.exe, not Authenticode-signed yet, so SmartScreen may show a warning. - Linux:
.AppImageand.deb(x64). - In-app updates are signed with the gitmini updater key and verified before installation, independently of operating-system code signing.
- Verify downloads with
SHA256SUMS, for exampleshasum -a 256 -c SHA256SUMS --ignore-missing. - gitmini requires Git 2.30 or later.
See docs/releases.md for installation and verification details.
gitmini v0.1.0
macOS: ad hoc signed .dmg installers for Apple Silicon and Intel, without notarization.
Windows: unsigned .msi. Linux: .AppImage and .deb.
Automatic updates are signed with the gitmini updater key. Verify downloads with SHA256SUMS.
See docs/releases.md for installation and verification instructions.