- Supports Windows/macOS/Linux
- Opensource/Free
- Fast
- Deutsch/English/Español/Français/Italiano/Português/Русский/简体中文/繁體中文
- Built-in light/dark themes
- Customize theme
- Visual commit graph
- Supports SSH access with each remote
- GIT commands with GUI
- Clone/Fetch/Pull/Push...
- Merge/Rebase/Reset/Revert/Amend/Cherry-pick...
- Amend/Reword
- Interactive rebase (Basic)
- Branches
- Remotes
- Tags
- Stashes
- Submodules
- Worktrees
- Archive
- Diff
- Save as patch/apply
- File histories
- Blame
- Revision Diffs
- Branch Diff
- Image Diff - Side-By-Side/Swipe/Blend
- Search commits
- GitFlow
- Git LFS
- Issue Link
- Workspace
- Using AI to generate commit message (C# port of anjerodev/commitollama)
Warning
Linux only tested on Debian 12 on both X11 & Wayland.
To use this tool, you need to install Git(>=2.23.0) first.
You can download the latest stable from Releases or download workflow artifacts from Github Actions to try this app based on latest commits.
This software creates a folder $"{System.Environment.SpecialFolder.ApplicationData}/SourceGit"
, which is platform-dependent, to store user settings, downloaded avatars and crash logs.
OS | PATH |
---|---|
Windows | C:\Users\USER_NAME\AppData\Roaming\SourceGit |
Linux | ${HOME}/.config/SourceGit or ${HOME}/.sourcegit |
macOS | ${HOME}/Library/Application Support/SourceGit |
Tip
You can open the app data dir from the main menu.
For Windows users:
- MSYS Git is NOT supported. Please use official Git for Windows instead.
- You can install the latest stable from
winget
with follow commands:winget install SourceGit
Note
winget
will install this software as a commandline tool. You need run SourceGit
from console or Win+R
at the first time. Then you can add it to the taskbar.
- You can install the latest stable by
scoope
with follow commands:scoop bucket add extras scoop install sourcegit
- Portable versions can be found in Releases
For macOS users:
- Thanks @ybeapps for making
SourceGit
available onHomebrew
. You can simply install it with following command:brew tap ybeapps/homebrew-sourcegit brew install --cask --no-quarantine sourcegit
- If you want to install
SourceGit.app
from Github Release manually, you need run following command to make sure it works:sudo xattr -cr /Applications/SourceGit.app
- Make sure git-credential-manager is installed on your mac.
- You can run
echo $PATH > ~/Library/Application\ Support/SourceGit/PATH
to generate a custom PATH env file to introducePATH
env to SourceGit.
For Linux users:
- For Debian/Ubuntu based distributions, you can add the
sourcegit
repository by following: You may need to install curl and/or gpg first, if you're on a very minimal host:Install the registry signing key:apt update && apt install curl gpg -y
Configure the source:curl -fsSL "https://packages.buildkite.com/sourcegit/sourcegit-deb/gpgkey" | gpg --dearmor -o /etc/apt/keyrings/sourcegit_sourcegit-deb-archive-keyring.gpg
Update your local repository and install the package:echo -e "deb [signed-by=/etc/apt/keyrings/sourcegit_sourcegit-deb-archive-keyring.gpg] https://packages.buildkite.com/sourcegit/sourcegit-deb/any/ any main\ndeb-src [signed-by=/etc/apt/keyrings/sourcegit_sourcegit-deb-archive-keyring.gpg] https://packages.buildkite.com/sourcegit/sourcegit-deb/any/ any main" > /etc/apt/sources.list.d/buildkite-sourcegit-sourcegit-deb.list
apt update && apt install sourcegit
- For RHEL/Fedora based distributions, you can add the
sourcegit
repository by following: Configure the source:Install the package with this command:sudo sh -c 'echo -e "[sourcegit-rpm]\nname=sourcegit-rpm\nbaseurl=https://packages.buildkite.com/sourcegit/sourcegit-rpm/rpm_any/rpm_any/\$basearch\nenabled=1\nrepo_gpgcheck=1\ngpgcheck=0\ngpgkey=https://packages.buildkite.com/sourcegit/sourcegit-rpm/gpgkey\npriority=1"' > /etc/yum.repos.d/sourcegit-rpm.repo
sudo dnf install -y sourcegit
Appimage
files can be found on AppimageHubxdg-open
must be installed to support open native file manager.- Make sure git-credential-manager is installed on your linux.
- Maybe you need to set environment variable
AVALONIA_SCREEN_SCALE_FACTORS
. See https://github.com/AvaloniaUI/Avalonia/wiki/Configuring-X11-per-monitor-DPI. - If you can NOT type accented characters, such as
ê
,ó
, try to set the environment variableAVALONIA_IM_MODULE
tonone
.
This software supports using OpenAI or other AI service that has an OpenAI comaptible HTTP API to generate commit message. You need configurate the service in Preference
window.
For OpenAI
:
Server
must behttps://api.openai.com/v1/chat/completions
For other AI service:
- The
Server
should fill in a URL equivalent to OpenAI'shttps://api.openai.com/v1/chat/completions
. For example, when usingOllama
, it should behttp://localhost:11434/v1/chat/completions
instead ofhttp://localhost:11434/api/generate
- The
API Key
is optional that depends on the service
This app supports open repository in external tools listed in the table below.
Tool | Windows | macOS | Linux |
---|---|---|---|
Visual Studio Code | YES | YES | YES |
Visual Studio Code - Insiders | YES | YES | YES |
VSCodium | YES | YES | YES |
Fleet | YES | YES | YES |
Sublime Text | YES | YES | YES |
Zed | NO | YES | YES |
Visual Studio | YES | NO | NO |
Note
This app will try to find those tools based on some pre-defined or expected locations automatically. If you are using one portable version of these tools, it will not be detected by this app.
To solve this problem you can add a file named external_editors.json
in app data dir and provide the path directly. For example:
{
"tools": {
"Visual Studio Code": "D:\\VSCode\\Code.exe"
}
}
Note
This app also supports a lot of JetBrains
IDEs, installing JetBrains Toolbox
will help this app to find them.
-
Dark Theme
-
Light Theme
-
Custom
You can find custom themes from sourcegit-theme. And welcome to share your own themes.
Everyone is welcome to submit a PR. Please make sure your PR is based on the latest develop
branch and the target branch of PR is develop
.
Thanks to all the people who contribute.