jesseduffield.lazygit/pkg/gui
Stefan Haller 0f7f1a56df Fix showing diffs for renamed file when filtering by path
When filtering for a file path we use the --follow option for "git log", so it
will follow renames of the file, which is great. However, if you then selected
one of the commits before a rename, you didn't see a diff, because we would pass
the original filter path to the "git show" call.

To fix this, call git log with the --name-status option when filtering by path,
so that each commit reports which file paths are touched in this commit;
remember these in the commit object, so that we can pass them to the "git show"
call later.

Be careful not to store too many such paths unnecessarily. When filtering by
folder rather than file, all these paths will necessarily be inside the original
filter path, so detect this and don't store them in this case.

There is some unfortunate code duplication between loading commits and loading
reflog commits, which I am too lazy to clean up right now.
2025-07-27 12:05:41 +02:00
..
context Fix search results being off by two lines during rebase or in divergence view 2025-07-12 17:30:36 +02:00
controllers Fix showing diffs for renamed file when filtering by path 2025-07-27 12:05:41 +02:00
filetree Enable revive linter, and fix a bunch of warnings 2025-06-30 19:13:20 +02:00
keybindings Enable revive linter, and fix a bunch of warnings 2025-06-30 19:13:20 +02:00
mergeconflicts Enable revive linter, and fix a bunch of warnings 2025-06-30 19:13:20 +02:00
modes Make Commit.Hash a getter for an unexported hash field 2025-04-29 14:57:15 +02:00
patch_exploring Fix scrolling hunk into view when selecting next hunk 2025-07-07 13:42:10 +02:00
popup Add convenience function ConfirmIf 2025-07-08 16:41:22 +02:00
presentation Enable revive linter, and fix a bunch of warnings 2025-06-30 19:13:20 +02:00
services/custom_commands Change Refresh to not return an error 2025-07-02 16:09:42 +02:00
status Move Loader to presentation package 2025-05-06 09:52:53 +02:00
style Add function to render a hyperlink 2024-08-24 10:36:01 +02:00
types Use the non-filtered reflog for undoing 2025-07-27 12:05:41 +02:00
background.go Change Refresh to not return an error 2025-07-02 16:09:42 +02:00
command_log_panel.go Fix warning QF1004: could use strings.ReplaceAll instead 2025-06-30 18:30:11 +02:00
context.go Add ContextMgr.NextInStack and use it to access side panel of focused main view 2025-05-22 14:38:40 +02:00
context_config.go Remove some unused code 2025-07-08 15:14:45 +02:00
controllers.go Remove unnecessary setSubCommits indirection 2025-07-27 12:05:41 +02:00
dummies.go Move NewDummyCommon to pkg/common 2025-05-06 09:43:26 +02:00
editors.go Support Alt+Backspace for word deletion in text areas 2025-07-17 19:13:25 +02:00
extras_panel.go Add pageUp/pageDown/top/bottom keybindings to focused command log panel 2025-04-08 16:11:15 +02:00
global_handlers.go Fix warning QF1004: could use strings.ReplaceAll instead 2025-06-30 18:30:11 +02:00
gui.go Remove deprecated edit configs 2025-07-08 16:32:21 +02:00
gui_common.go Change Refresh to not return an error 2025-07-02 16:09:42 +02:00
gui_driver.go Fix clicking multiple times in an integration test 2024-10-18 10:06:52 +02:00
information_panel.go Enable revive linter, and fix a bunch of warnings 2025-06-30 19:13:20 +02:00
keybindings.go Allow switching between confirmation and suggestions by clicking 2025-07-11 11:18:28 +02:00
layout.go Bump gocui and adapt lazygit code 2025-06-05 13:20:38 +02:00
main_panels.go Fix race with PTYs in integration tests 2025-03-28 11:16:04 +01:00
menu_panel.go Cleanup: get rid of the variadic parameter of ContextMgr.Push 2025-04-08 16:08:25 +02:00
options_map.go Make WorkingTreeState a struct, and add cherry-picking and reverting states 2025-04-20 15:53:17 +02:00
pty.go Fix race with PTYs in integration tests 2025-03-28 11:16:04 +01:00
pty_windows.go Format code to pass lint 2021-09-16 21:38:43 +08:00
recent_repos_panel.go Remove unused field gui.IsNewRepo 2024-12-01 10:44:26 +01:00
tasks_adapter.go Change NewRenderStringWith{out}ScrollTask to reuse the task key of the existing task 2024-10-18 22:46:47 +02:00
test_mode.go Don't wait in integration tests when running in headless mode 2024-06-05 14:44:02 +02:00
view_helpers.go Add ContextMgr.NextInStack and use it to access side panel of focused main view 2025-05-22 14:38:40 +02:00
views.go add bold style for border 2025-06-15 16:28:20 +02:00