/sourcegit

Windows/macOS/Linux GUI client for GIT users

Primary LanguageC#MIT LicenseMIT

SourceGit

Opensource Git GUI client.

Highlights

  • Supports Windows/macOS/Linux
  • Opensource/Free
  • Fast
  • English/German/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
  • GitFlow
  • Git LFS
  • Issue Link

Linux only tested on Debian 12 on both X11 & Wayland.

How to Use

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
macOS ${HOME}/Library/Application Support/SourceGit

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

    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:

  • Download sourcegit_x.y.osx-x64.zip or sourcegit_x.y.osx-arm64.zip from Releases. x64 for Intel and arm64 for Apple Silicon.
  • Move SourceGit.app to Applications folder.
  • Make sure your mac trusts all software from anywhere. For more information, search spctl --master-disable.
  • Make sure git-credential-manager is installed on your mac.
  • You may need to run sudo xattr -cr /Applications/SourceGit.app to make sure the software works.

For Linux users:

External Tools

This app supports open repository in external tools listed in the table below.

Tool Windows macOS Linux Environment Variable
Visual Studio Code YES YES YES VSCODE_PATH
Visual Studio Code - Insiders YES YES YES VSCODE_INSIDERS_PATH
VSCodium YES YES YES VSCODIUM_PATH
JetBrains Fleet YES YES YES FLEET_PATH
Sublime Text YES YES YES SUBLIME_TEXT_PATH
  • You can set the given environment variable for special tool if it can NOT be found by this app automatically.
  • Installing JetBrains Toolbox will help this app to find other JetBrains tools installed on your device.
  • On macOS, you may need to use launchctl setenv to make sure the app can read these environment variables.

Screenshots

  • Dark Theme

    Theme Dark

  • Light Theme

    Theme Light

  • Custom

    You can find custom themes from sourcegit-theme

Contributing

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.

Contributors