summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/pull_request_template.md2
-rw-r--r--.github/workflows/cd.yml4
-rw-r--r--.github/workflows/ci.yml20
-rw-r--r--.golangci.yml9
-rw-r--r--Dockerfile2
-rw-r--r--Makefile4
-rw-r--r--README.md8
-rw-r--r--docs/Config.md692
-rw-r--r--docs/Custom_Command_Keybindings.md3
-rw-r--r--docs/Fixup_Commits.md26
-rw-r--r--docs/dev/Find_Base_Commit_For_Fixup_Design.md229
-rw-r--r--docs/dev/README.md1
-rw-r--r--docs/keybindings/Keybindings_en.md2
-rw-r--r--docs/keybindings/Keybindings_ja.md2
-rw-r--r--docs/keybindings/Keybindings_ko.md2
-rw-r--r--docs/keybindings/Keybindings_nl.md2
-rw-r--r--docs/keybindings/Keybindings_ru.md2
-rw-r--r--docs/keybindings/Keybindings_zh-CN.md2
-rw-r--r--docs/keybindings/Keybindings_zh-TW.md2
-rw-r--r--go.mod4
-rw-r--r--go.sum4
-rw-r--r--pkg/commands/git.go2
-rw-r--r--pkg/commands/git_commands/branch_loader.go163
-rw-r--r--pkg/commands/git_commands/branch_loader_test.go102
-rw-r--r--pkg/commands/git_commands/branch_test.go5
-rw-r--r--pkg/commands/git_commands/commit_loader.go34
-rw-r--r--pkg/commands/git_commands/commit_loader_test.go35
-rw-r--r--pkg/commands/git_commands/commit_test.go8
-rw-r--r--pkg/commands/git_commands/file_loader_test.go1
-rw-r--r--pkg/commands/git_commands/flow_test.go2
-rw-r--r--pkg/commands/git_commands/main_branches.go (renamed from pkg/commands/git_commands/existing_main_branches.go)55
-rw-r--r--pkg/commands/git_commands/rebase_test.go3
-rw-r--r--pkg/commands/git_commands/reflog_commit_loader_test.go1
-rw-r--r--pkg/commands/git_commands/repo_paths_test.go1
-rw-r--r--pkg/commands/git_commands/stash.go17
-rw-r--r--pkg/commands/git_commands/stash_loader_test.go1
-rw-r--r--pkg/commands/git_commands/stash_test.go3
-rw-r--r--pkg/commands/git_commands/sync.go4
-rw-r--r--pkg/commands/git_commands/sync_test.go25
-rw-r--r--pkg/commands/git_commands/tag_loader_test.go1
-rw-r--r--pkg/commands/git_commands/working_tree_test.go9
-rw-r--r--pkg/commands/git_commands/worktree_loader.go2
-rw-r--r--pkg/commands/git_commands/worktree_loader_test.go1
-rw-r--r--pkg/commands/git_config/cached_git_config_test.go2
-rw-r--r--pkg/commands/hosting_service/hosting_service_test.go1
-rw-r--r--pkg/commands/models/branch.go36
-rw-r--r--pkg/commands/oscommands/cmd_obj_runner.go7
-rw-r--r--pkg/commands/oscommands/os.go7
-rw-r--r--pkg/commands/patch/patch_test.go4
-rw-r--r--pkg/config/editor_presets.go33
-rw-r--r--pkg/config/user_config.go78
-rw-r--r--pkg/config/user_config_validation.go7
-rw-r--r--pkg/gui/context/menu_context.go1
-rw-r--r--pkg/gui/context/suggestions_context.go11
-rw-r--r--pkg/gui/controllers/branches_controller.go2
-rw-r--r--pkg/gui/controllers/confirmation_controller.go10
-rw-r--r--pkg/gui/controllers/custom_command_action.go27
-rw-r--r--pkg/gui/controllers/custom_patch_options_menu_action.go5
-rw-r--r--pkg/gui/controllers/diffing_menu_action.go1
-rw-r--r--pkg/gui/controllers/helpers/confirmation_helper.go17
-rw-r--r--pkg/gui/controllers/helpers/fixup_helper.go192
-rw-r--r--pkg/gui/controllers/helpers/fixup_helper_test.go137
-rw-r--r--pkg/gui/controllers/helpers/refresh_helper.go24
-rw-r--r--pkg/gui/controllers/helpers/sub_commits_helper.go2
-rw-r--r--pkg/gui/controllers/helpers/window_arrangement_helper.go2
-rw-r--r--pkg/gui/controllers/helpers/window_arrangement_helper_test.go81
-rw-r--r--pkg/gui/controllers/local_commits_controller.go1
-rw-r--r--pkg/gui/controllers/status_controller.go18
-rw-r--r--pkg/gui/controllers/suggestions_controller.go28
-rw-r--r--pkg/gui/controllers/sync_controller.go38
-rw-r--r--pkg/gui/filetree/build_tree_test.go4
-rw-r--r--pkg/gui/filetree/file_node_test.go2
-rw-r--r--pkg/gui/filetree/file_tree_test.go1
-rw-r--r--pkg/gui/gui.go15
-rw-r--r--pkg/gui/mergeconflicts/find_conflicts.go2
-rw-r--r--pkg/gui/mergeconflicts/state_test.go1
-rw-r--r--pkg/gui/patch_exploring/focus_test.go1
-rw-r--r--pkg/gui/popup/popup_handler.go16
-rw-r--r--pkg/gui/presentation/branches.go35
-rw-r--r--pkg/gui/presentation/branches_test.go97
-rw-r--r--pkg/gui/presentation/commits_test.go1
-rw-r--r--pkg/gui/presentation/files_test.go2
-rw-r--r--pkg/gui/presentation/graph/graph.go1
-rw-r--r--pkg/gui/presentation/graph/graph_test.go2
-rw-r--r--pkg/gui/services/custom_commands/handler_creator.go10
-rw-r--r--pkg/gui/services/custom_commands/menu_generator_test.go1
-rw-r--r--pkg/gui/services/custom_commands/models.go100
-rw-r--r--pkg/gui/services/custom_commands/resolver.go1
-rw-r--r--pkg/gui/services/custom_commands/session_state_loader.go182
-rw-r--r--pkg/gui/style/style_test.go2
-rw-r--r--pkg/gui/types/common.go24
-rw-r--r--pkg/i18n/chinese.go635
-rw-r--r--pkg/i18n/english.go8
-rw-r--r--pkg/i18n/korean.go529
-rw-r--r--pkg/i18n/polish.go2
-rw-r--r--pkg/i18n/russian.go767
-rw-r--r--pkg/i18n/traditional_chinese.go767
-rw-r--r--pkg/integration/components/prompt_driver.go18
-rw-r--r--pkg/integration/components/runner.go2
-rw-r--r--pkg/integration/components/shell.go4
-rw-r--r--pkg/integration/tests/branch/delete.go4
-rw-r--r--pkg/integration/tests/branch/delete_remote_branch_with_credential_prompt.go2
-rw-r--r--pkg/integration/tests/branch/rebase_to_upstream.go2
-rw-r--r--pkg/integration/tests/branch/reset_to_upstream.go4
-rw-r--r--pkg/integration/tests/commit/find_base_commit_for_fixup_only_added_lines.go84
-rw-r--r--pkg/integration/tests/custom_commands/delete_from_history.go41
-rw-r--r--pkg/integration/tests/custom_commands/edit_history.go31
-rw-r--r--pkg/integration/tests/custom_commands/show_output_in_panel.go57
-rw-r--r--pkg/integration/tests/patch_building/move_to_new_commit_partial_hunk.go10
-rw-r--r--pkg/integration/tests/stash/stash_staged_partial_file.go70
-rw-r--r--pkg/integration/tests/status/click_repo_name_to_open_repos_menu.go18
-rw-r--r--pkg/integration/tests/status/click_to_focus.go35
-rw-r--r--pkg/integration/tests/status/click_working_tree_state_to_open_rebase_options_menu.go27
-rw-r--r--pkg/integration/tests/status/show_divergence_from_base_branch.go27
-rw-r--r--pkg/integration/tests/sync/force_push.go2
-rw-r--r--pkg/integration/tests/sync/force_push_multiple_matching.go2
-rw-r--r--pkg/integration/tests/sync/force_push_multiple_upstream.go2
-rw-r--r--pkg/integration/tests/sync/force_push_remote_branch_not_stored_locally.go81
-rw-r--r--