Feature reference
Everything GitSleek does, grouped the way you work.
History & branches
Commit graph
- One graph for everything Branches, tags, stashes, worktrees and pull requests share one commit graph.
- Animated changes Merges collapse and expand with animation, and the graph moves smoothly as fetches, pushes and merges change it.
- Large histories History loads progressively and updates in place, so large repositories open quickly and scroll smoothly.
- Collapse merges Collapse one merge or all of them to simplify a dense history.
- Density and order Comfortable or compact rows, date or topological order, compact branch and version tag labels.
- Drag and drop Drag commits, branches and stashes in the graph to merge, rebase, cherry-pick, push or reset. The drop names the operation before you release.
- Commit details Author, committer, parents, full IDs and Markdown descriptions, with links to parents and references.
- Tabs for investigations Open commits and comparisons in tabs of their own and keep several open at once.
Filters and search
- Branch filters Show only the current branch, or hide and show selected branches, tags and whole folders of references.
- Search history Find commits by message, ID, author, branch, tag or changed file.
- Highlight or filter Highlight matches in the full graph, or narrow it to matching commits.
- Results as you type The first matches appear right away while the deeper search continues.
Branches and tags
- Create and switch Create branches from any commit, branch or tag; check out local and remote branches or a single commit.
- Rename and delete Rename local and remote branches and delete several at once, with a warning before unmerged commits would be lost.
- Tracking Set, change or remove the upstream branch; ahead and behind counts show what to push and pull.
- Folders and sorting Branches group into folders by their slashes and sort by name or recent use.
- Stale branches Find local branches whose upstream is gone and select them for cleanup.
- Tags Create lightweight or annotated tags, inspect annotations, and push or delete tags locally and on remotes.
Comparing
- Compare commits Compare any two commits, or any commit with your local changes.
- Branch against its base Review only what a branch adds. Its base is found from the pull request, the reflog or the graph, and you can change it.
- No checkout needed Browse the files and changes of any revision without touching your working copy.
File history and blame
- File and folder history Every commit that changed a file or folder, following renames.
- Blame Line-by-line authors and commits, optionally ignoring whitespace; select a commit to highlight its lines.
- Files at any revision Browse the complete file tree of any commit and open older versions of files.
Changes & commits
Reviewing changes
- Unified or side by side Read changes unified, side by side, or in a compact linked layout.
- Syntax highlighting Bundled grammars for C++, C#, Python, TypeScript, Rust, Go, Swift and many more.
- Word-level highlights Changed characters stand out inside each changed line.
- Context and whitespace Adjust context lines or show the whole file, ignore whitespace changes, show invisible characters and wrap long lines.
- Find and navigate Search inside changes and jump between them or to a line.
- One scrolling view Scroll through every changed file of a commit in one view.
Staging and committing
- Staged and unstaged apart See what goes into the commit separately from what stays behind.
- Stage precisely Stage, unstage or discard whole files, folders, hunks or single lines.
- Untracked and ignored files Show or hide them, and add files, folders or extensions to .gitignore or a local exclude.
- Live status Changes made outside the app appear on their own.
- Commit and push Commit, amend, or commit and push in one step, with a warning before amending a pushed commit.
- Commit messages A separate summary and description, templates, recent messages, saved drafts and spellchecking.
- Identities Set your name and email globally or per repository, or let the matching hosting account choose.
Rewriting history
- Visual interactive rebase Drag commits into a new order and reword, edit, squash, fix up or drop them, with a preview of the rewritten commits and affected branches.
- Merge and rebase Merge with a fast-forward, a merge commit or a squash, or rebase onto another branch, with optional autostash.
- Cherry-pick Apply one or several commits to the current branch, with or without committing.
Stashes
- Stash what you choose Stash everything, only selected files, or untracked files too.
- Snapshots Stash a snapshot and keep working on your changes.
- Inspect before applying Review a stash’s changes, see stashes in the graph, and rename or delete them.
Images and large files
- Image comparison Compare images side by side, with a swipe divider or an adjustable overlay, SVG included.
- Zoom and transparency Zoom and pan over a checkerboard, light or dark background.
- Binary files See how the size of binary files changed.
- Native previews PDFs, documents and other files open in your system’s own previewer, right in the app.
- Git LFS Track files by pattern and fetch, pull, push or prune LFS objects.
- File locks Make patterns lockable, lock and unlock files and see who holds locks.
- Patches Save commits or changes as patches and apply patch files, also by dropping them on the window.
Conflicts & recovery
Before you start
- Conflict check See whether a merge or rebase will conflict before you run it.
- Unfinished work Checks before destructive operations warn about uncommitted changes and unmerged commits.
Resolving
- Visual conflict editor Both sides and an editable result: choose a side for each conflict, keep both in either order, or edit the result yourself.
- Step through conflicts Move between unresolved conflicts, save partial work and mark files resolved.
- Images and binary files Compare conflicting images and keep either side.
- Deleted and renamed files Delete and rename conflicts show both sides.
- Submodule conflicts Compare the conflicting submodule revisions in a graph and choose one.
- External merge tool Resolve in your own merge tool instead.
- Continue, skip or abort Carry on with a merge, rebase, cherry-pick or revert after conflicts, skip a commit, or abort.
Recovery
- Reflog Step through the reflog in the graph to find commits that seem lost, and bring them back with a branch or a reset.
- Revert Undo one or several commits with new commits, with or without committing right away.
- Reset Soft, mixed or hard, each explained before you choose.
- Clear results Partial failures, cancellations and conflicts are reported apart from what succeeded.
Remotes & hosting
Services
- Supported services GitHub, GitLab, Bitbucket, Azure DevOps, Gitea and Forgejo, including GitHub Enterprise, GitLab self-managed, Bitbucket Data Center and Azure DevOps Server.
- Several accounts Connect several accounts and private servers and see each connection’s status.
- Any Git remote Remotes on other hosts work as ordinary Git remotes.
- Links and avatars Open repositories and commits on the web, with contributor avatars throughout.
Pull requests
- In the app List pull and merge requests with their author, state, draft status and branches; filter, sort and search them.
- In the graph Pull request labels sit on their branches in the graph. Click one to see its changes.
- Descriptions and changes Read descriptions in Markdown and inspect the commits and changes.
- On the web Open a request in the browser, or start one from a branch.
Issues
- Issue links Issue keys in commit messages, branch names and pull requests become links, with details where the service provides them.
- Jira Jira Cloud and Jira Data Center.
- Custom trackers Your own key patterns and URL templates, limited to the repositories you choose.
Remotes and sync
- Fetch, pull and push Fetch one remote or all, pull with merge or rebase, push branches and tags, and publish new branches with tracking.
- Automatic fetch Fetch the current repository on a schedule, without login prompts.
- Force with lease A safer force push, never remembered as a default.
- Manage remotes Add, rename, edit and remove remotes.
- Progress Transfers show their progress and can be canceled.
Repositories
Opening and cloning
- Clone From an HTTPS or SSH address, from a connected account’s repository list, or from an address in the clipboard.
- Home Recent repositories with their branch and latest commit; filter and sort them, or fetch and pull right from the list.
- Open and create Open existing repositories, create new ones, or drop a folder on the window.
Tabs, windows and workspaces
- Tabs and windows Open many repositories in tabs, and drag a tab out into a window of its own or into another window.
- Workspaces Save sets of windows and tabs as named workspaces and switch between them.
- Restore Windows, tabs and layout come back where you left them, and closed tabs reopen.
Worktrees
- Worktrees List, create and remove worktrees, and open each in its own tab.
- Change counts See local changes in your other worktrees at a glance.
- Safe removal A warning before removing a worktree with unfinished work.
Submodules
- Manage submodules Add, update, open and remove submodules.
- Nested status Tell a moved submodule commit apart from changes inside the submodule.
- Submodule history See the commits behind a submodule update in a small graph.
Credentials and SSH
- Secure storage Tokens are kept in the system’s credential store.
- Sign in Sign in through the browser where the service supports it, or use a personal access token.
- SSH keys Add existing keys, generate new ones, choose a default and test a connection.
Your setup
Tools
- Editors and terminal Open a repository in your editor or terminal; installed editors are found automatically.
- External diff and merge tools Presets and custom commands with your own arguments.
- Your Git Real Git underneath: the bundled one, the system one, or your own installation.
- Git output See the Git commands that ran and their output, and copy the details for troubleshooting.
Navigation
- Quick Actions Find actions, repositories, branches, commits, files and settings from one search.
- Keyboard shortcuts Shortcuts for frequent actions, remappable, with conflict detection.
- Settings search Find any setting by name.
Appearance
- Themes Light and dark themes, an accent color and a title bar fill.
- Fonts and scale Interface and code fonts, code size, tab width and interface scale.
- Your layout Pane sizes and view options are remembered.
AI commit messages
- Optional Nothing is sent anywhere until you set up a provider and ask.
- Your provider OpenAI, Anthropic, or a local model through LM Studio.
- Draft or improve Write a commit message from your staged changes, improve a draft or rewrite a selection, also while rebasing.
- Instructions and consent Reusable instructions per repository, and a prompt before any changes are shared.
Platforms
- Windows, macOS and Linux The same app on all three.
- Sharp at any scale Drawn for the display’s pixel density.
- Updates Check for, download and verify updates inside the app.
- Command line Open a repository from the command line in the running app.