master
code_style: general cleanup (#1525)
code_style: remove warnings reported by JetBrains Rider
feature: add dirty state indicator icon to repository tab (#1227)
project: reorganize the structure of the project.
enhance: avoid crashing due to invalid bookmark value in `preferences.json`
refactor: use new command `QueryRepositoryStatus` to update repository status in `Welcome` page
refactor: streamline certain string operations (#1540)
feature: supports to discard all local changes without untracked files (#1586)
refactor: use converters instead of store so many data in `Models.Commit`
feature: supports to create pull request with selected branch (or its upstream) (#1854)
code_style: general cleanup (#1469)
code_style: general cleanup (#1415)
fix: rewrite the `ConfirmEmptyCommit` dialog to avoid pressing the same button more than one time (#1777)
feature: allows to customize conventional commit types (#1861)
refactor: implement `IDisposable` instead of calling custom `Cleanup`
feature: add `File` scope for custom action (#1872)
typos: (#1397)
code_style: general cleanup (#1497)
feature: add a button to see which branches and tags that contains selected commit (#388)
code_style: move class extensions to `App.Extensions.cs` to use these extensions anywhere
refactor: rewrite `TextDiffContext` and fix the issue that text diff view does not navigate to the first change chunk after select a different commit with the same file
refactor: simplify the invocation of external merge/diff tool
feature: supports to open file with detected external tools (#1882)
enhance: GPG signing settings.
ux: re-design `Add File(s) To Ignore` popup
feature!: now `SourceGit` requires git >= `2.25.1`
feature: auto-remove history filter after deleting branch or tag (#1904)
code_review: commit 9f155d7 from heartacker:heartacker/issue1595
refactor: rewrite the way to register git command log receiver
enhance: only refresh submodules when it is needed (#1344)
feature: supports to view `.tiff` images
code_review: PR #1402
refactor: now final commit message will use the squash/fixed target instead of the last picked
fix: modified/renamed issue tracker rule can not be saved (#1768)
refactor: use `--json` while querying LFS locks instead of parse line-by-line with regex (#1858)
refactor: rewrite lfs pointer detection and image loading
localization: add Korean(ko_KR) support (#1864)
refactor: auto-select merge mode
code_review: PR #793
code_style: remove unused code and resources
code_style: general cleanup (#1428)
enhance: make `NumericSort` use `InvariantCulture` instead of `Ordinal` comparison (#1724)
code_review: PR (#280)
code_style: readability
refactor: save history filters into `$GIT_DIR/sourcegit.filters` to support different filters between worktrees (#1893)
feature: supports to scan workspace's default clone dir (#1454)
refactor: allows to specify startup options for external shell/terminal (#1856)
feature: supports to change submodule's branch (#1513)
feature: allow to select multiple tags and delete theme from context menu (#1717)
feature: supports output changes file names (without folders in path) in commit message template (#1851)
feat: add Vue.js syntax highlighting (#1785)
theme: add `ThemeOverrides.OpacityForNotMergedCommits` to customize the opacity of commits that not belongs (haven't been merged) to current branch in histories (#268)
feature: show tagger in annotated tag's tooltip (#1664)
enhance: clear updating workingcopy timer while calling `MarkBranchesDirtyManually`
code_review: PR #1660