Jesse Duffield
2344155379
handle empty commit in rebase
2019-11-05 19:22:01 +11:00
Jesse Duffield
48347d4d86
use fallback approach for applying patch
2019-11-05 19:22:01 +11:00
Jesse Duffield
61deaaddb7
reorder patch command options
2019-11-05 19:22:01 +11:00
Jesse Duffield
0046e9c469
create backups of patch files in case something goes wrong
2019-11-05 19:22:01 +11:00
Jesse Duffield
733145d132
clear patch after successful patch operation
2019-11-05 19:22:01 +11:00
Jesse Duffield
f285d80d0e
move PatchManager to GitCommand
2019-11-05 19:22:01 +11:00
Jesse Duffield
0ffccbd3ee
checks for if we're in a normal working tree state
2019-11-05 19:22:01 +11:00
Jesse Duffield
1fc120de2d
better rebase args
2019-11-05 19:22:01 +11:00
Jesse Duffield
d5e443e8e3
Support building and moving patches
...
WIP
2019-11-05 19:22:01 +11:00
Jesse Duffield
a3c84296bf
use array of ints instead of range
2019-11-05 19:22:01 +11:00
Jesse Duffield
cc039d1f9b
don't unsplit main panel unconditionally on focus lost
2019-11-05 19:22:01 +11:00
Dawid Dziurla
2484ec9c11
fix headerRegexp
2019-11-05 19:22:01 +11:00
Dawid Dziurla
5f9de1f034
please golang-ci
2019-11-05 19:22:01 +11:00
Jesse Duffield
11e57edbb3
use v keybindings instead of c
2019-11-05 19:22:01 +11:00
Jesse Duffield
820f3d5cbb
support split view in staging panel and staging ranges
2019-11-05 19:22:01 +11:00
Jesse Duffield
081598d989
rewrite staging to support line ranges and reversing
...
Now we can stage lines by range and we can also stage reversals
meaning we can delete lines or move lines from the working tree
to the index and vice versa.
I looked at how a few different git guis achieved this to iron out
some edge cases, notably ungit and git cola. The end result is
disstinct from both those repos, but I know people care about
licensing and stuff so I'm happy to revisit this if somebody
considers it derivative.
2019-11-05 19:22:01 +11:00
Giorgio Previtera
a1c6619401
\#480 Close popup panels before switching to a side view
...
Reusing the `onNewPopupPanel` function to close existing popup panels
(if any) before switching to a new side view. Alse closing any
confirmation prompt.
2019-10-27 12:39:08 +11:00
Giorgio Previtera
3524f6baa9
480 - remove duplication by using a decorator
...
Also use a for loop to append the new keybindings
2019-10-27 12:39:08 +11:00
Giorgio Previtera
ac5cbc1d2c
#480 Allow cycling side panels with number keys
2019-10-27 12:39:08 +11:00
mjarkk
a045313e08
Removed the pkg/gui/theme.go file
...
Moved most functions to the new theme/theme.go
2019-10-20 12:32:57 +11:00
mjarkk
02fef3136f
Added light theme option to the settings
2019-10-20 12:32:57 +11:00
Dawid Dziurla
379dcf0972
UserConfigPath -> UserConfigDir
2019-09-24 19:01:40 +10:00
Dawid Dziurla
0d25d113c9
download updated binary to config dir rather than /tmp
2019-09-24 19:01:40 +10:00
matejcik
600112780c
use git.autoFetch config option
2019-09-08 11:20:15 +10:00
matejcik
4c73c8889f
move git config options to top-level in default config
2019-09-08 11:20:15 +10:00
matejcik
68d5c2bc10
use gui.g directly
2019-09-08 11:20:15 +10:00
matejcik
7db1fee877
startBackgroundFetch does not return errors
2019-09-08 11:20:15 +10:00
matejcik
8f786e3fd9
configurable auto-fetch
2019-09-08 11:20:15 +10:00
Dawid Dziurla
e0dd1cb29d
switch to Go modules
2019-09-01 21:24:03 +10:00
Giorgio Previtera
827837b0b9
477 Remove unnecessary variable check
...
hasInlineMergeConflicts is always true with hasMergeConflicts is true
2019-07-27 11:05:23 +10:00
Giorgio Previtera
e83ef9858b
#477 Remove NeedMerge
boolean
...
Instead of storing the status in a new variable, derive it from
the existing three fields
2019-07-27 11:05:23 +10:00
Giorgio Previtera
504d506575
477 Add new NeedReset
property to File and update tests
...
Use a boolean to determin if a file needs to be reset. We want to reset
the file when discrading changes if there is a conflict.
2019-07-27 11:05:23 +10:00
Giorgio Previtera
823b436b53
477 Remove duplicate checkout
...
We already checout the file calling `c.DiscardUnstagedFileChanges`
2019-07-27 11:05:23 +10:00
Giorgio Previtera
212327d746
#477 Discard changes when there are merge conflicts
...
If there are merge conflicts, reset the file and discard all changes
2019-07-27 11:05:23 +10:00
Christian Muehlhaeuser
cc138fc70e
Simplified boolean comparison
2019-07-27 10:55:21 +10:00
Christian Muehlhaeuser
d953712377
err was assigned but never checked
2019-07-27 10:55:01 +10:00
Christian Muehlhaeuser
69ac0036e6
Swallow errors entirely, instead of assigning and ignoring them
2019-07-27 10:53:19 +10:00
Christian Muehlhaeuser
975a5315b0
Simplified code a bit
2019-07-27 10:52:06 +10:00
Christian Muehlhaeuser
8f734b11e3
Removed unnecessary string conversion
2019-07-27 10:51:17 +10:00
Jesse Duffield
75db4faf69
show actual error when trying to check out a branch that doesn't exist
2019-07-14 14:31:48 +10:00
haowei
e1f5601d4b
fix typo
2019-07-14 14:24:59 +10:00
Giorgio Previtera
b60ecdaa24
472 - Update error message
2019-07-14 14:24:18 +10:00
Giorgio Previtera
9fb9962ce7
472 - Don't panic if not in a repository
...
Display a friendly message and exit with an error if not
in a Git repository. Using the same approach used in this PR:
https://github.com/jesseduffield/lazydocker/pull/14/files
2019-07-14 14:24:18 +10:00
Jesse Duffield
b8baef7b8f
use fork of roll that doesn't care about errors
2019-06-29 20:56:46 +10:00
Jesse Duffield
235a47bb80
Revert "emergency situation: we're not logging to rollrus while we're past the request quota"
...
This reverts commit c107eed890
.
2019-06-29 20:56:46 +10:00
Jesse Duffield
c107eed890
emergency situation: we're not logging to rollrus while we're past the request quota
2019-06-24 12:29:44 +10:00
Jesse Duffield
abddea060e
revert menu panel error panel usage
2019-06-08 20:29:25 +10:00
Jesse Duffield
3e40369fd2
add GIT_OPTIONAL_LOCKS=0 env var to all commands
2019-06-06 20:53:35 +10:00
Jesse Duffield
0f0fda1660
allow stashing staged changes
...
reinstate old stash functionality with the 's' keybinding
2019-06-06 20:50:19 +10:00
Jesse Duffield
bd2170a99c
request explicit return from subprocess
...
Previously we were recording output from subprocesses using a multiwriter
and hooking that up to the cmd's stdout to write to both os.Stdout and
a buffer. We would then display the output after the program finished.
This worked well for commands like 'ls' but not for commands like 'vi'
which expect you to be in a tty, and when you've got the cmd's stdout
pointing at a multiwriter, the subprogram thinks we're not in a tty
and then things like terminal corruption can happen. This was the case
with neovim, and even in vim a warning was given with a pause before
starting the program.
Now we're chucking out the multiwriter and instead making it that you
need to press enter after the program has finished to return to lazygit.
This allows you to view the output of the program (e.g. if it's ls) and
then decide that you want to return. It's one level of unnecessary
redirection for editors like vim, but even they could potentially have
output to stderr/stdout that you want to look at before returning.
Please enter the commit message for your changes. Lines starting
2019-05-26 21:19:54 +10:00