Jesse Duffield
3cd2d6fa5c
Hide worktree functionality on old git versions
2023-07-30 18:35:22 +10:00
Jesse Duffield
ec839e9e96
Associate branches with worktrees even when mid-rebase
2023-07-30 18:35:22 +10:00
Jesse Duffield
6f2f9f6677
Assume that the base of a worktree can be checked out
2023-07-30 18:35:22 +10:00
Jesse Duffield
2082fdf84a
i18n for worktrees
2023-07-30 18:35:22 +10:00
Jesse Duffield
894485190b
Don't quit on error
2023-07-30 18:35:22 +10:00
Jesse Duffield
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
Jesse Duffield
2e68967e02
Show base ref suggestions when creating worktree
2023-07-30 18:35:22 +10:00
Jesse Duffield
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
Jesse Duffield
9c69a5df69
Checkout worktree when creating from worktree view
2023-07-30 18:35:22 +10:00
Jesse Duffield
9b24995990
Use 'M' for months in branches panel
2023-07-30 18:35:22 +10:00
Jesse Duffield
142f06357f
Fix filtering logic in worktrees view
2023-07-30 18:35:22 +10:00
Jesse Duffield
18ea68c23a
Support creating worktrees from refs
2023-07-30 18:35:22 +10:00
Jesse Duffield
4b2622d93b
Fix wording
2023-07-30 18:35:22 +10:00
Jesse Duffield
ae0193698e
Log when directory is changed
2023-07-30 18:35:22 +10:00
Jesse Duffield
6b4a638415
Handle deleting branch attached to worktree
2023-07-30 18:35:22 +10:00
Jesse Duffield
4b3c9f5b35
Update wording
2023-07-30 18:35:22 +10:00
Jesse Duffield
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
Jesse Duffield
5868750aba
Move status panel presentation logic into presentation package
2023-07-30 18:35:22 +10:00
Jesse Duffield
ab3052f642
Land in the same panel when switching to a worktree
2023-07-30 18:35:22 +10:00
Jesse Duffield
53f4ccb809
Move current worktree to top of list
2023-07-30 18:35:22 +10:00
Jesse Duffield
077ae99438
Prompt to switch to worktree when branch is checked out by other worktree
2023-07-30 18:35:22 +10:00
Jesse Duffield
fe8adf9eb8
Use git lingo
2023-07-30 18:35:22 +10:00
Jesse Duffield
c713d550c0
Improve name handling
2023-07-30 18:35:22 +10:00
Jesse Duffield
d19d89ea9d
Use sentence case
2023-07-30 18:35:22 +10:00
Jesse Duffield
e8ec41fb0f
Refactor
2023-07-30 18:35:22 +10:00
Jesse Duffield
7682ec029b
Update worktree model
2023-07-30 18:35:22 +10:00
Jesse Duffield
03f726038e
Alert when attempting to enter the current worktree
2023-07-30 18:35:21 +10:00
Jesse Duffield
796945aad0
Remove comment
2023-07-30 18:35:21 +10:00
Joel Baranick
db02c13bf6
Address PR comments
2023-07-30 18:35:21 +10:00
Joel Baranick
1ce9a87544
Basic support for adding a worktree
2023-07-30 18:35:21 +10:00
Joel Baranick
35e6e6347a
Put all worktree i18n strings together
...
Use tabwriter to align worktree panel contents
2023-07-30 18:35:21 +10:00
Joel Baranick
54708233ac
Improve worktree panel
2023-07-30 18:35:21 +10:00
Joel Baranick
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
Joel Baranick
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
Joel Baranick
60872c91e6
Update status to differentiate the main vs linked worktrees
2023-07-30 18:35:21 +10:00
Joel Baranick
afc4aedd4f
Support for deleting a worktree
2023-07-30 18:35:21 +10:00
Joel Baranick
f8ba899b87
Initial addition of support for worktrees
2023-07-30 18:35:21 +10:00
Stefan Haller
52447e5d46
When bisecting, always mark the current commit as good/bad, not the selected ( #2837 )
2023-07-29 14:56:14 +02:00
Stefan Haller
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
Stefan Haller
a4772ae606
Add bisect menu entry that lets you choose bisect terms ( #2838 )
2023-07-29 12:02:22 +02:00
Stefan Haller
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
Stefan Haller
9b7f978e3e
Fix the x/exp dependency ( #2844 )
2023-07-29 11:59:04 +02:00
Jesse Duffield
f17417219a
feat: add os.copyToClipboardCmd to allow for a custom command #1055 ( #2784 )
2023-07-29 19:35:52 +10:00
Red S
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
Stefan Haller
deecbadda9
Fix the x/exp dependency
...
We started to use it directly in 429225da80
.
2023-07-29 10:01:41 +02:00
README-bot
1db1fee03a
Updated README.md
2023-07-29 02:39:15 +00:00
Jesse Duffield
2f0116170d
Faster refresh ( #2841 )
2023-07-29 12:39:00 +10:00
Jesse Duffield
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
Jesse Duffield
39b77c0fca
Have staging refresh wait for files to refresh first
2023-07-29 10:20:15 +10:00
Jesse Duffield
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