About
About SourceGit
• Build with
• Chart is rendered by
© 2024 sourcegit-scm
• TextEditor from
• Monospace fonts come from
• Source code can be found at
Opensource & Free Git GUI Client
Add Worktree
What to Checkout:
Existing Branch
Create New Branch
Location:
Path for this worktree. Relative path is supported.
Branch Name:
Optional. Default is the destination folder name.
Track Branch:
Tracking remote branch
AI Assistant
Use AI to generate commit message
Patch
Error
Raise errors and refuses to apply the patch
Error All
Similar to 'error', but shows more
Patch File:
Select .patch file to apply
Ignore whitespace changes
No Warn
Turns off the trailing whitespace warning
Apply Patch
Warn
Outputs warnings for a few such errors, but applies
Whitespace:
Archive...
Save Archive To:
Select archive file path
Revision:
Archive
SourceGit Askpass
FILES ASSUME UNCHANGED
NO FILES ASSUMED AS UNCHANGED
REMOVE
BINARY FILE NOT SUPPORTED!!!
Blame
BLAME ON THIS FILE IS NOT SUPPORTED!!!
Checkout ${0}$...
Compare with Branch
Compare with HEAD
Compare with Worktree
Copy Branch Name
Delete ${0}$...
Delete selected {0} branches
Discard all changes
Fast-Forward to ${0}$
Fetch ${0}$ into ${1}$...
Git Flow - Finish ${0}$
Merge ${0}$ into ${1}$...
Pull ${0}$
Pull ${0}$ into ${1}$...
Push ${0}$
Rebase ${0}$ on ${1}$...
Rename ${0}$...
Set Tracking Branch
Unset Upstream
Branch Compare
Bytes
CANCEL
Reset to This Revision
Reset to Parent Revision
Generate commit message
CHANGE DISPLAY MODE
Show as File and Dir List
Show as Path List
Show as Filesystem Tree
Checkout Branch
Checkout Commit
Warning: By doing a commit checkout, your Head will be detached
Commit:
Branch:
Local Changes:
Discard
Do Nothing
Stash & Reapply
Cherry Pick
Append source to commit message
Commit(s):
Commit all changes
Mainline:
Usually you cannot cherry-pick a merge because you do not know which side of the merge should be considered the mainline. This option allows cherry-pick to replay the change relative to the specified parent.
Clear Stashes
You are trying to clear all stashes. Are you sure to continue?
Clone Remote Repository
Extra Parameters:
Additional arguments to clone repository. Optional.
Local Name:
Repository name. Optional.
Parent Folder:
Repository URL:
CLOSE
Editor
Cherry-Pick This Commit
Cherry-Pick ...
Checkout Commit
Compare with HEAD
Compare with Worktree
Copy Info
Copy SHA
Custom Action
Interactive Rebase ${0}$ to Here
Rebase ${0}$ to Here
Reset ${0}$ to Here
Revert Commit
Reword
Save as Patch...
Squash Into Parent
Squash Child Commits to Here
CHANGES
Search Changes...
FILES
LFS File
Submodule
INFORMATION
AUTHOR
CHANGED
COMMITTER
Check refs that contains this commit
COMMIT IS CONTAINED BY
Shows only the first 100 changes. See all changes on the CHANGES tab.
MESSAGE
PARENTS
REFS
SHA
Open in Browser
Enter commit subject
Description
Repository Configure
COMMIT TEMPLATE
Template Name:
Template Content:
CUSTOM ACTION
Arguments:
${REPO} - Repository's path; ${SHA} - Selected commit's SHA
Executable File:
Name:
Scope:
Commit
Repository
Email Address
Email address
GIT
Fetch remotes automatically
Minute(s)
Default Remote
Enable --prune on fetch
Enable --signoff for commit
ISSUE TRACKER
Add Sample Github Rule
Add Sample Jira Rule
Add Sample GitLab Issue Rule
Add Sample GitLab Merge Request Rule
New Rule
Issue Regex Expression:
Rule Name:
Result URL:
Please use $1, $2 to access regex groups values.
AI
Prefered Service:
If the 'Prefered Service' is set, SourceGit will only use it in this repository. Otherwise, if there is more than one service available, a context menu to choose one of them will be shown.
HTTP Proxy
HTTP proxy used by this repository
User Name
User name for this repository
Workspaces
Color
Restore tabs on startup
Conventional Commit Helper
Breaking Change:
Closed Issue:
Detail Changes:
Scope:
Short Description:
Type of Change:
Copy
Copy All Text
Copy Path
Copy File Name
Create Branch...
Based On:
Check out the created branch
Local Changes:
Discard
Do Nothing
Stash & Reapply
New Branch Name:
Enter branch name.
Create Local Branch
Create Tag...
New Tag At:
GPG signing
Tag Message:
Optional.
Tag Name:
Recommended format: v1.0.0-alpha
Push to all remotes after created
Create New Tag
Kind:
annotated
lightweight
Hold Ctrl to start directly
Cut
Delete Branch
Branch:
You are about to delete a remote branch!!!
Also delete remote branch ${0}$
Delete Multiple Branches
You are trying to delete multiple branches at one time. Be sure to double-check before taking action!
Delete Remote
Remote:
Target:
Confirm Deleting Group
Confirm Deleting Repository
Delete Submodule
Submodule Path:
Delete Tag
Tag:
Delete from remote repositories
BINARY DIFF
NEW
OLD
Copy
File Mode Changed
Ignore Whitespace Change
LFS OBJECT CHANGE
Next Difference
NO CHANGES OR ONLY EOL CHANGES
Previous Difference
Save as Patch
Show hidden symbols
Side-By-Side Diff
SUBMODULE
NEW
Swap
Syntax Highlighting
Line Word Wrap
Open in Merge Tool
Show All Lines
Decrease Number of Visible Lines
Increase Number of Visible Lines
SELECT FILE TO VIEW CHANGES
Open in Merge Tool
Discard Changes
All local changes in working copy.
Changes:
Include ignored files
Total {0} changes will be discard
You can't undo this action!!!
Bookmark:
New Name:
Target:
Edit Selected Group
Edit Selected Repository
Run Custom Action
Action Name:
Fast-Forward (without checkout)
Fetch
Fetch all remotes
Fetch without tags
Remote:
Fetch Remote Changes
Assume unchanged
Discard...
Discard {0} files...
Discard Changes in Selected Line(s)
Open External Merge Tool
Save as Patch...
Stage
Stage {0} files
Stage Changes in Selected Line(s)
Stash...
Stash {0} files...
Unstage
Unstage {0} files
Unstage Changes in Selected Line(s)
Use Theirs (checkout --theirs)
Use Mine (checkout --ours)
File History
CONTENT
CHANGE
Git-Flow
Development Branch:
Feature:
Feature Prefix:
FLOW - Finish Feature
FLOW - Finish Hotfix
FLOW - Finish Release
Target:
Hotfix:
Hotfix Prefix:
Initialize Git-Flow
Keep branch
Production Branch:
Release:
Release Prefix:
Start Feature...
FLOW - Start Feature
Start Hotfix...
FLOW - Start Hotfix
Enter name
Start Release...
FLOW - Start Release
Version Tag Prefix:
Git LFS
Add Track Pattern...
Pattern is file name
Custom Pattern:
Add Track Pattern to Git LFS
Fetch
Fetch LFS Objects
Run `git lfs fetch` to download Git LFS objects. This does not update the working copy.
Install Git LFS hooks
Show Locks
No Locked Files
Lock
Show only my locks
LFS Locks
Unlock
Force Unlock
Prune
Run `git lfs prune` to delete old LFS files from local storage
Pull
Pull LFS Objects
Run `git lfs pull` to download all Git LFS files for current ref & checkout
Push
Push LFS Objects
Push queued large files to the Git LFS endpoint
Remote:
Track files named '{0}'
Track all *{0} files
Histories
Switch Horizontal/Vertical Layout
AUTHOR
AUTHOR TIME
GRAPH & SUBJECT
SHA
COMMIT TIME
SELECTED {0} COMMITS
Holding 'Ctrl' or 'Shift' to select multiple commits.
Holding ⌘ or ⇧ to select multiple commits.
TIPS:
Keyboard Shortcuts Reference
GLOBAL
Cancel current popup
Close current page
Go to previous page
Go to next page
Create new page
Open preference dialog
REPOSITORY
Commit staged changes
Commit and push staged changes
Stage all changes and commit
Creates a new branch based on selected commit
Discard selected changes
Fetch, starts directly
Dashboard mode (Default)
Pull, starts directly
Push, starts directly
Force to reload this repository
Stage/Unstage selected changes
Commit search mode
Switch to 'Changes'
Switch to 'Histories'
Switch to 'Stashes'
TEXT EDITOR
Close search panel
Find next match
Find previous match
Open search panel
Stage
Unstage
Discard
Initialize Repository
Path:
Cherry-Pick in progress. Press 'Abort' to restore original HEAD.
Merge request in progress. Press 'Abort' to restore original HEAD.
Rebase in progress. Press 'Abort' to restore original HEAD.
Revert in progress. Press 'Abort' to restore original HEAD.
Interactive Rebase
Target Branch:
On:
Open in Browser
Copy Link
ERROR
NOTICE
Merge Branch
Into:
Merge Option:
Source Branch:
Move Repository Node
Select parent node for:
Name:
Git has NOT been configured. Please to go [Preference] and configure it first.
Open App Data Dir
Open with...
Optional.
Create New Page
Bookmark
Close Tab
Close Other Tabs
Close Tabs to the Right
Copy Repository Path
Repositories
Paste
Just now
{0} minutes ago
{0} hours ago
Yesterday
{0} days ago
Last month
{0} months ago
Last year
{0} years ago
Preference
AI
Analyze Diff Prompt
API Key
Generate Subject Prompt
Model
Name
Server
APPEARANCE
Default Font
Font Size
Default
Editor
Monospace Font
Only use monospace font in text editor
Theme
Theme Overrides
Use fixed tab width in titlebar
Use native window frame
DIFF/MERGE TOOL
Install Path
Input path for diff/merge tool
Tool
GENERAL
Check for updates on startup
Language
History Commits
Show author time intead of commit time in graph
Subject Guide Length
GIT
Enable Auto CRLF
Default Clone Dir
User Email
Global git user email
Install Path
User Name
Global git user name
Git version
Git (>= 2.23.0) is required by this app
GPG SIGNING
Commit GPG signing
Tag GPG signing
GPG Format
Program Install Path
Input path for installed gpg program
User Signing Key
User's gpg signing key
INTEGRATION
SHELL/TERMINAL
Shell/Terminal
Path
Prune Remote
Target:
Prune Worktrees
Prune worktree information in `$GIT_DIR/worktrees`
Pull
Branch:
Fetch all branches
Into:
Local Changes:
Discard
Do Nothing
Stash & Reapply
Fetch without tags
Remote:
Pull (Fetch & Merge)
Use rebase instead of merge
Push
Make sure submodules have been pushed
Force push
Local Branch:
Remote:
Push Changes To Remote
Remote Branch:
Set as tracking branch
Push all tags
Push Tag To Remote
Push to all remotes
Remote:
Tag:
Quit
Rebase Current Branch
Stash & reapply local changes
On:
Rebase:
Refresh
Add Remote
Edit Remote
Name:
Remote name
Repository URL:
Remote git repository URL
Copy URL
Delete...
Edit...
Fetch
Open In Browser
Prune
Confirm to Remove Worktree
Enable `--force` Option
Target:
Rename Branch
New Name:
Unique name for this branch
Branch:
ABORT
Auto fetching changes from remotes...
Cleanup(GC & Prune)
Run `git gc` command for this repository.
Clear all
Configure this repository
CONTINUE
Custom Actions
No Custom Actions
Enable '--reflog' Option
Open in File Browser
Search Branches/Tags/Submodules
Unset
Hide in commit graph
Filter in commit graph
Switch Order Mode
Commit Date (--date-order)
Topologically (--topo-order)
LOCAL BRANCHES
Navigate to HEAD
Enable '--first-parent' Option
Create Branch
Open in {0}
Open in External Tools
Refresh
REMOTES
ADD REMOTE
RESOLVE
Search Commit
File
Message
SHA
Author & Committer
Current Branch
Show Tags as Tree
Statistics
SUBMODULES
ADD SUBMODULE
UPDATE SUBMODULE
TAGS
NEW TAG
Open in Terminal
WORKTREES
ADD WORKTREE
PRUNE
Git Repository URL
Reset Current Branch To Revision
Reset Mode:
Move To:
Current Branch:
Reveal in File Explorer
Revert Commit
Commit:
Commit revert changes
Reword Commit Message
Use 'Shift+Enter' to input a new line. 'Enter' is the hotkey of OK button
Running. Please wait...
SAVE
Save As...
Patch has been saved successfully!
Scan Repositories
Root Dir:
Check for Updates...
New version of this software is available:
Check for updates failed!
Download
Skip This Version
Software Update
There are currently no updates available.
Squash Commits
Into:
SSH Private Key:
Private SSH key store path
START
Stash
Include untracked files
Keep staged files
Message:
Optional. Name of this stash
Only staged changes
Both staged and unstaged changes of selected file(s) will be stashed!!!
Stash Local Changes
Apply
Drop
Pop
Drop Stash
Drop:
Stashes
CHANGES
STASHES
Statistics
COMMITS
COMMITTER
MONTH
WEEK
COMMITS:
AUTHORS:
OVERVIEW
SUBMODULES
Add Submodule
Copy Relative Path
Fetch nested submodules
Open Submodule Repository
Relative Path:
Relative folder to store this module.
Delete Submodule
OK
Copy Tag Name
Copy Tag Message
Delete ${0}$...
Merge ${0}$ into ${1}$...
Push ${0}$...
URL:
Update Submodules
All submodules
Initialize as needed
Recursively
Submodule:
Use --remote option
Warning
Welcome Page
Create Group
Create Sub-Group
Clone Repository
Delete
DRAG & DROP FOLDER SUPPORTED. CUSTOM GROUPING SUPPORTED.
Edit
Move to Another Group
Open All Repositories
Open Repository
Open Terminal
Rescan Repositories in Default Clone Dir
Search Repositories...
Sort
Changes
Git Ignore
Ignore all *{0} files
Ignore *{0} files in the same folder
Ignore files in the same folder
Ignore this file only
Amend
You can stage this file now.
COMMIT
COMMIT & PUSH
Template/Histories
Trigger click event
Stage all changes and commit
Empty commit detected! Do you want to continue (--allow-empty)?
CONFLICTS DETECTED
FILE CONFLICTS ARE RESOLVED
INCLUDE UNTRACKED FILES
NO RECENT INPUT MESSAGES
NO COMMIT TEMPLATES
STAGED
UNSTAGE
UNSTAGE ALL
UNSTAGED
STAGE
STAGE ALL
VIEW ASSUME UNCHANGED
Template: ${0}$
Right-click the selected file(s), and make your choice to resolve conflicts.
WORKSPACE:
Configure Workspaces...
WORKTREE
Copy Path
Lock
Remove
Unlock