jesseduffield.lazygit/pkg/gui
Jesse Duffield 53a8bd2e3f Add ability to start an interactive rebase onto an appropriate base
A common issue I have is that I want to move a commit from the top of my branch
all the way down to the first commit on the branch. To do that, I need to navigate
down to the first commit on my branch, press 'e' to start an interactive rebase,
then navigate back up to the top of the branch, then move my commit back down to
the base. This is annoying.

Similarly annoying is moving the commit one-by-one without explicitly starting
an interactive rebase, because then each individual step is its own rebase which
takes a while in aggregate.

This PR allows you to press 'i' from the commits view to start an interactive
rebase from an 'appropriate' base. By appropriate, we mean that we want to start
from the HEAD and stop when we reach the first merge commit or commit on the main
branch. This may end up including more commits than you need, but it doesn't make
a difference.
2024-01-13 12:57:49 +11:00
..
context Fall back to WithWaitingStatus if item is scrolled out of view 2023-12-10 16:03:25 +01:00
controllers Add ability to start an interactive rebase onto an appropriate base 2024-01-13 12:57:49 +11:00
filetree Fall back to WithWaitingStatus if item is scrolled out of view 2023-12-10 16:03:25 +01:00
keybindings Add disabled compat for user config (#2833) 2023-10-09 22:34:50 +03:00
mergeconflicts migrate patch building tests 2023-02-25 21:37:16 +11:00
modes Add a "Mark commit as base commit for rebase" command 2023-07-31 08:41:41 +02:00
patch_exploring Stop cycling hunks when reaching the end 2023-08-15 11:40:40 +02:00
popup Add WithWaitingStatusSync 2023-12-09 15:28:40 +01:00
presentation feat: add age on stash lines 2023-12-27 11:21:49 +01:00
services/custom_commands Standardise on using lo for slice functions 2023-07-30 18:51:23 +10:00
status Pass "now" into utils.Loader 2023-10-16 09:03:07 +02:00
style Stop hiding underscores for VSCode 2023-06-01 20:12:20 +10:00
types Fall back to WithWaitingStatus if item is scrolled out of view 2023-12-10 16:03:25 +01:00
background.go Ensure background refreshes don't bunch up 2023-07-10 17:30:44 +10:00
command_log_panel.go Introduce filtered list view model 2023-07-03 12:54:13 +10:00
context.go Standardise on using lo for slice functions 2023-07-30 18:51:23 +10:00
context_config.go move some methods 2023-04-30 13:19:53 +10:00
controllers.go Add command to find base commit for creating a fixup 2024-01-10 09:11:40 +01:00
dummies.go feat: add GitVersion struct 2022-12-30 20:01:14 +09:00
editors.go Add emacs-keybinds for word navigation 2023-08-15 12:22:17 +02:00
extras_panel.go Extract a SaveAppStateAndLogError function 2023-09-04 17:50:49 +02:00
global_handlers.go Add demo test variant 2023-07-31 22:33:04 +10:00
gui.go Add WithWaitingStatusSync 2023-12-09 15:28:40 +01:00
gui_common.go Add WithInlineStatus helper function 2023-10-08 18:45:36 +02:00
gui_driver.go Bump gocui 2024-01-10 09:39:25 +01:00
information_panel.go If OpenLink errors, show a dialog instead 2023-08-09 13:12:40 +01:00
keybindings.go Add Enabled func to Binding 2023-09-18 10:20:23 +02:00
layout.go Rerender certain views when their width changes 2023-10-16 09:03:07 +02:00
main_panels.go Return only visible views from TopViewInWindow 2023-12-10 15:57:51 +01:00
menu_panel.go Remove the magenta color on menu items that open a menu 2023-08-29 08:04:47 +02:00
options_map.go Add demo test variant 2023-07-31 22:33:04 +10:00
pty.go Use a PTY when calling external diff command 2023-11-22 12:08:05 +01:00
pty_windows.go Format code to pass lint 2021-09-16 21:38:43 +08:00
recent_repos_panel.go Use forward-slashes on windows 2023-07-30 18:35:24 +10:00
tasks_adapter.go Use an interface for tasks instead of a concrete struct 2023-07-10 17:12:21 +10:00
test_mode.go Disable the 40-second timeout for integration tests when debugging 2023-09-28 10:03:53 +02:00
view_helpers.go Log duration of post-refresh-update call 2023-07-29 09:39:22 +10:00
views.go Layout the bottom line view using spacer views 2023-12-09 11:18:28 +01:00