1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-03 00:57:52 +02:00
Commit Graph

4527 Commits

Author SHA1 Message Date
ec839e9e96 Associate branches with worktrees even when mid-rebase 2023-07-30 18:35:22 +10:00
6f2f9f6677 Assume that the base of a worktree can be checked out 2023-07-30 18:35:22 +10:00
2082fdf84a i18n for worktrees 2023-07-30 18:35:22 +10:00
894485190b Don't quit on error 2023-07-30 18:35:22 +10:00
87b2455dbb Allow opening worktree in editor
This does the job but I think we need yet another editor command for opening a directory in a new window.
2023-07-30 18:35:22 +10:00
2e68967e02 Show base ref suggestions when creating worktree 2023-07-30 18:35:22 +10:00
71422a8549 Refresh work trees when discarding file changes
We do this because we may be deleting a worktree folder so we'll need to show that in the worktrees view
2023-07-30 18:35:22 +10:00
9c69a5df69 Checkout worktree when creating from worktree view 2023-07-30 18:35:22 +10:00
9b24995990 Use 'M' for months in branches panel 2023-07-30 18:35:22 +10:00
142f06357f Fix filtering logic in worktrees view 2023-07-30 18:35:22 +10:00
18ea68c23a Support creating worktrees from refs 2023-07-30 18:35:22 +10:00
4b2622d93b Fix wording 2023-07-30 18:35:22 +10:00
ae0193698e Log when directory is changed 2023-07-30 18:35:22 +10:00
6b4a638415 Handle deleting branch attached to worktree 2023-07-30 18:35:22 +10:00
4b3c9f5b35 Update wording 2023-07-30 18:35:22 +10:00
6c69549ced Don't touch repo stack when switching worktrees
We shouldn't touch this cos we're doing a lateral move
2023-07-30 18:35:22 +10:00
5868750aba Move status panel presentation logic into presentation package 2023-07-30 18:35:22 +10:00
ab3052f642 Land in the same panel when switching to a worktree 2023-07-30 18:35:22 +10:00
53f4ccb809 Move current worktree to top of list 2023-07-30 18:35:22 +10:00
077ae99438 Prompt to switch to worktree when branch is checked out by other worktree 2023-07-30 18:35:22 +10:00
fe8adf9eb8 Use git lingo 2023-07-30 18:35:22 +10:00
c713d550c0 Improve name handling 2023-07-30 18:35:22 +10:00
d19d89ea9d Use sentence case 2023-07-30 18:35:22 +10:00
e8ec41fb0f Refactor 2023-07-30 18:35:22 +10:00
7682ec029b Update worktree model 2023-07-30 18:35:22 +10:00
03f726038e Alert when attempting to enter the current worktree 2023-07-30 18:35:21 +10:00
796945aad0 Remove comment 2023-07-30 18:35:21 +10:00
db02c13bf6 Address PR comments 2023-07-30 18:35:21 +10:00
1ce9a87544 Basic support for adding a worktree 2023-07-30 18:35:21 +10:00
35e6e6347a Put all worktree i18n strings together
Use tabwriter to align worktree panel contents
2023-07-30 18:35:21 +10:00
54708233ac Improve worktree panel 2023-07-30 18:35:21 +10:00
c679fd1924 Style missing worktree as red and display better error when trying to switch to them
Use a broken link icon for missing worktrees
2023-07-30 18:35:21 +10:00
9a79154d05 Hide worktrees in the worktree panel if they point at a non-existing filesystem location.
Remove unneeded check when filtering out branches from non-current worktrees from the branch panel.
Add link icon for linked worktrees
2023-07-30 18:35:21 +10:00
60872c91e6 Update status to differentiate the main vs linked worktrees 2023-07-30 18:35:21 +10:00
afc4aedd4f Support for deleting a worktree 2023-07-30 18:35:21 +10:00
f8ba899b87 Initial addition of support for worktrees 2023-07-30 18:35:21 +10:00
52447e5d46 When bisecting, always mark the current commit as good/bad, not the selected (#2837) 2023-07-29 14:56:14 +02:00
6794149ec8 When bisecting, always mark the current commit as good/bad, not the selected
For marking as good or bad, the current commit is pretty much always the one you
want to mark, not the selected. It's different for skipping; sometimes you know
already that a certain commit doesn't compile, for example, so you might
navigate there and mark it as skipped. So in the case that the current commit is
not the selected one, we now offer two separate menu entries for skipping, one
for the current commit and one for the selected.
2023-07-29 14:44:00 +02:00
a4772ae606 Add bisect menu entry that lets you choose bisect terms (#2838) 2023-07-29 12:02:22 +02:00
f30e09856c Add bisect menu entry that lets you choose bisect terms
This can be useful if you want to find the commit that fixed a bug (you'd use
"broken/fixed" instead of "good/bad" in this case), or if you want to find the
commit that brought a big performance improvement (use "slow/fast"). It's pretty
mind-bending to have to use "good/bad" in these cases, and swap their meanings
in your head.

Thankfully, lazygit already had support for using custom terms during the bisect
(for the case that a bisect was started on the command-line, I suppose), so all
that's needed is adding a way to specify them in lazygit.
2023-07-29 11:59:58 +02:00
9b7f978e3e Fix the x/exp dependency (#2844) 2023-07-29 11:59:04 +02:00
f17417219a feat: add os.copyToClipboardCmd to allow for a custom command #1055 (#2784) 2023-07-29 19:35:52 +10:00
d7f84aed8a feat: add os.copyToClipboardCmd to allow for a custom command
Issue #1055

test: CopyPatchToClipboard (temporary commit for review)
2023-07-29 19:09:59 +10:00
deecbadda9 Fix the x/exp dependency
We started to use it directly in 429225da80.
2023-07-29 10:01:41 +02:00
1db1fee03a Updated README.md 2023-07-29 02:39:15 +00:00
2f0116170d Faster refresh (#2841) 2023-07-29 12:39:00 +10:00
429225da80 Support random order of command execution in unit tests
Now that we run code concurrently in our loaders, we need to handle that in our tests.
We could enforce a deterministic ordering by mocking waitgroup or something like that,
but I think it's fine to let our tests handle some randomness given that prod itself
will have that randomness.

I've removed the patch test file because it was clunky, not providing much value, and
it would have been hard to refactor to the new pattern
2023-07-29 12:36:17 +10:00
39b77c0fca Have staging refresh wait for files to refresh first 2023-07-29 10:20:15 +10:00
63e5790410 Speed up refresh using concurrency and wait groups
Previously our synchronous refreshes took far longer because nothing
was happening concurrently. We now run refresh functions concurrently
and use a wait group to ensure they're all done before returning
2023-07-29 10:04:11 +10:00
272e021c08 Refactor reflog commit loader
No functional changes
2023-07-29 10:04:11 +10:00