Commit graph

1869 commits

Author SHA1 Message Date
Jesse Duffield c43416891e update cheatsheet 2021-02-09 20:23:20 +11:00
Jesse Duffield e7fff2529c fix lint error 2021-02-08 14:40:30 -08:00
Jesse Duffield 78867647d1 remove go-gitconfig package 2021-02-08 14:40:30 -08:00
Jesse Duffield 09f32d4f84 add secureexec file for getting around windows checking for a binary first in the current dir 2021-02-08 14:40:30 -08:00
Nick Flueckiger 6f0f70bd92 Adding setup and config 2021-02-08 14:25:24 -08:00
caquillo07 6df15ddf6e added support for using spaces on branch names when creating new ones. 2021-02-08 14:23:54 -08:00
unknown 922c0887f1 fix type: executable not found error when there is a merge conflict on windows 2021-01-01 13:17:29 -08:00
Dawid Dziurla bb4bf23c5c
gui: ReplaceAll -> Replace 2020-12-24 10:21:54 +01:00
Jesse Duffield caf208b0a4 v24 release notes 2020-12-24 13:52:29 +11:00
Jesse Duffield 14ce230683 refactor 2020-11-28 20:48:17 +11:00
Jesse Duffield f31fbc10f6 soft code finding of suggestions 2020-11-28 20:48:17 +11:00
Jesse Duffield be404068ff support labels for suggestions which are distinct from values 2020-11-28 20:48:17 +11:00
Jesse Duffield 5671ec5f58 refactor prompt opts 2020-11-28 20:48:17 +11:00
Jesse Duffield da3b0bf7c8 Start on supporting auto-suggestions when checking out a branch
switch to other fuzzy package with no dependencies
2020-11-28 20:48:17 +11:00
Yuki Osaki 90ade3225f Add lc prefix 2020-11-28 19:19:47 +11:00
Yuki Osaki 4928d1d490 Visualize the commits for all branches 2020-11-28 19:19:47 +11:00
Kalvin Pearce 0a58cb2877 Fix formatting on notARepository checks 2020-11-28 10:51:34 +11:00
Kalvin Pearce d468866746 Add config option for notInRepo behaviour. 2020-11-28 10:51:34 +11:00
Jesse Duffield 999e170f1d standardise how we read from the config 2020-11-28 10:45:30 +11:00
Nick Flueckiger 7513bfb13a Implement suggestions 2020-11-28 10:42:38 +11:00
Nick Flueckiger 1f27002b84 Switch the directory check 2020-11-28 10:42:38 +11:00
Nick Flueckiger 669bfe763a A small change that enables direct lazygit directory config 2020-11-28 10:42:38 +11:00
Davyd McColl 860370a845 👌 update as per PR commentary 2020-11-28 10:27:28 +11:00
Davyd McColl 196761a40a 🐛 should only stage all if configured to do so _and_ there are no items staged 2020-11-28 10:27:28 +11:00
Davyd McColl 26d5444919 implement quick commit when no files staged, if configured to do so 2020-11-28 10:27:28 +11:00
Nathan Bell e05c41828c added tests and fixed bug found in tests 2020-11-25 08:41:22 +11:00
Nathan Bell c4cce58464 Allow --follow-tags to be disabled if push.followTags is configured to false 2020-11-25 08:41:22 +11:00
Jesse Duffield f7e6d4e724 fix updater 2020-11-22 10:00:35 +11:00
Jesse Duffield 3e13936e08 notify user upon copying something to clipboard 2020-11-21 17:31:08 +11:00
Jesse Duffield a3dfcd5a95 toast notifications 2020-11-21 17:31:08 +11:00
Farzad Majidfayyaz 74bb6f0012 Change copy PR mapping to <c-y> and use gui.Tr for the message 2020-11-19 09:43:51 +11:00
Farzad Majidfayyaz 79888d3bde Add mapping to copy a pull request URL to the clipboard 2020-11-19 09:43:51 +11:00
Jesse Duffield 682db77401 fix lint errors 2020-11-18 08:36:19 +11:00
Jesse Duffield 5ff0ac2816 prevent crash when removing remote with no urls 2020-11-05 21:32:08 +11:00
Dawid Dziurla 5669cc0002
gui: fix go-1.10 compatibility 2020-10-14 12:43:31 +02:00
Dawid Dziurla 327b6ad097
utils: ReplaceAll -> Replace
Fix compatibility with older Go compiler versions
2020-10-13 17:25:37 +02:00
Jesse Duffield b1dd3c4866 support rebinding confirm/newline keys in editor 2020-10-13 08:21:09 +11:00
Jesse Duffield 624fb8da21 preserve width of side panel when main view split unless window is wide enough 2020-10-13 07:31:14 +11:00
nullawhale 1ff405edd8 Copy a commit message to clipboard: Changes to latest version 2020-10-12 21:04:01 +11:00
Jesse Duffield 031e97ef91 more password checks on commands that talk to the remote 2020-10-12 19:07:40 +11:00
Jesse Duffield 3df0a9f132 update in-app release notes 2020-10-12 09:08:47 +11:00
Jesse Duffield 1e79ab78dd return default config when dealing with read only filesystem rather than create new config file 2020-10-12 08:48:28 +11:00
Jesse Duffield 1e48afeb8f quote config file when editing 2020-10-12 08:47:12 +11:00
band-a-prend 582fd24d78 Add SSH key passphrase prompt to pull/push from/to remote git repo
This commit resolves issue with absence of ssh key prompting
to pull from or push to remote git repository.

I checked lazygit with this patch for successfully pull from
and push to https://gitweb.gentoo.org/repo/proj/guru.git repository.
While for lazygit-0.23.1 I'm not able to do that.

The check for Passphrase follows the Password because of
more long time before SSH key is prompt in terminal.
Otherwise after timeout "Password" prompt is appears.

Excuse me for google translated i18n dutch lines.

Bug: https://github.com/jesseduffield/lazygit/issues/534

Signed-off-by: band-a-prend <torokhov-s-a@yandex.ru>
2020-10-10 17:58:23 +11:00
Jesse Duffield a0963f8036 fix up intro text even more 2020-10-10 10:12:52 +11:00
Jesse Duffield 7d002474d7 fix up intro text 2020-10-10 09:58:59 +11:00
Jesse Duffield ef77d7c608 fix submodule tab colour 2020-10-10 00:23:01 +11:00
Jesse Duffield 63f6d0c036 release notes in status panel 2020-10-10 00:23:01 +11:00
Jesse Duffield aa5001f661 for some reason the commit files view was on top 2020-10-10 00:23:01 +11:00
Jesse Duffield c1a6229c2c install lazygit at beginning of test suite 2020-10-10 00:23:01 +11:00
Jesse Duffield 4c9ec88be5 fix mutex deadlock 2020-10-10 00:23:01 +11:00
Jesse Duffield 9011271a01 fix another panic error 2020-10-10 00:23:01 +11:00
Jesse Duffield 795e4da8b8 do not put mutexes on state else we might unlock an unlocked mutex 2020-10-10 00:23:01 +11:00
Jesse Duffield 79e59d5460 add some safe goroutines
WIP
2020-10-10 00:23:01 +11:00
Jesse Duffield ba4c3e5bc4 small changes 2020-10-10 00:23:01 +11:00
Jesse Duffield 88f2a66a51 store everything you need to know about a test in its directory 2020-10-10 00:23:01 +11:00
Jesse Duffield bb081ca764 more mutex safety with staging panel 2020-10-10 00:23:01 +11:00
CI a9049b4a82 stop using snapshots 2020-10-10 00:23:01 +11:00
CI ae352a5d8c configurable speeds 2020-10-10 00:23:01 +11:00
CI e2ad503bda stop using snapshot just store the actual resultant repo 2020-10-10 00:23:01 +11:00
CI 2657060aa2 support running integration tests in parallel 2020-10-10 00:23:01 +11:00
Jesse Duffield 2724f3888a fix CI 2020-10-10 00:23:01 +11:00
Jesse Duffield dc953ea680 fall back to slower speed if test fails 2020-10-10 00:23:01 +11:00
Jesse Duffield 08f8472db3 fix loop logic 2020-10-10 00:23:01 +11:00
Jesse Duffield 2e05ac0c90 paging keybindings for line by line panel
support searching in line by line panel

move mutexes into their own struct

add line by line panel mutex

apply LBL panel mutex

bump gocui to prevent crashing when search item count decreases
2020-10-10 00:23:01 +11:00
Jesse Duffield 40c5cd4b4b another integration test 2020-10-10 00:23:01 +11:00
Jesse Duffield 18f8c3d00a add merge conflicts integration test 2020-10-10 00:23:01 +11:00
Jesse Duffield 074fbf6f25 heed gocui stopping 2020-10-10 00:23:01 +11:00
Jesse Duffield a482f20ba3 kill process if nothing happens two seconds after final event 2020-10-10 00:23:01 +11:00
Jesse Duffield c36349f460 add another integration test 2020-10-10 00:23:01 +11:00
Jesse Duffield 485f6d5386 support configurable config 2020-10-10 00:23:01 +11:00
Jesse Duffield 778ca8e6f9 better interface 2020-10-10 00:23:01 +11:00
Jesse Duffield b64c6a3ac7 this is so cool 2020-10-10 00:23:01 +11:00
Jesse Duffield f76196937a support integration testing
WIP
2020-10-10 00:23:01 +11:00
Jesse Duffield ece93e5eef support recording sessions for testing purposes 2020-10-10 00:23:01 +11:00
Jesse Duffield 37bb89dac3 type i18n 2020-10-10 00:23:01 +11:00
Jesse Duffield 7d9aa97f96 have typed default config 2020-10-10 00:23:01 +11:00
Jesse Duffield ca31e5258f store popup version in state not config so that we never need to write to the user config 2020-10-10 00:23:01 +11:00
Jesse Duffield 4912205adb remove viper
WIP
2020-10-10 00:23:01 +11:00
Jesse Duffield 6e076472b8 switch to fork of go-git 2020-10-06 21:58:41 +11:00
kobutomo 3e15ae3211 Add error panel. 2020-10-06 21:55:01 +11:00
kobutomo 26cb209af2 Ignore "i" command if the filename is .gitignore 2020-10-06 21:55:01 +11:00
Jesse Duffield 76f7726c47 dont close over loop variables ugh I hate this language feature 2020-10-02 20:05:45 +10:00
Jesse Duffield 9763fa9997 fix windows CI 2020-10-02 08:09:42 +10:00
Jesse Duffield 7be474bd83 update keybindings 2020-10-02 08:09:42 +10:00
Jesse Duffield 30b3478611 fix test 2020-10-02 08:09:42 +10:00
Jesse Duffield f77ce209e0 use path not name 2020-10-02 08:09:42 +10:00
Jesse Duffield a61356d018 dont really need this 2020-10-02 08:09:42 +10:00
Jesse Duffield 2dc848506c bulk submodule menu 2020-10-02 08:09:42 +10:00
Jesse Duffield 9125e3c0c6 stop refreshing item when at end of list 2020-10-02 08:09:42 +10:00
Jesse Duffield 86dd9d87dd allow updating submodule 2020-10-02 08:09:42 +10:00
Jesse Duffield da3e00823f allow submodule init and show submodule diff with a prefix 2020-10-02 08:09:42 +10:00
Jesse Duffield f3be2b3e68 improved command for deleting a submodule 2020-10-02 08:09:42 +10:00
Jesse Duffield 988176e073 manually update submodule url 2020-10-02 08:09:42 +10:00
Jesse Duffield 5d128adee1 add mutexes for when looping through views 2020-10-02 08:09:42 +10:00
Jesse Duffield 71d4c552af allow updating submodule url 2020-10-02 08:09:42 +10:00
Jesse Duffield d4ab607d0d allow adding a submodule 2020-10-02 08:09:42 +10:00
Jesse Duffield ea307c8d94 add more submodule commands 2020-10-02 08:09:42 +10:00
Jesse Duffield 7b4a0f20b2 add submodules context 2020-10-02 08:09:42 +10:00
Jesse Duffield 3b93b5dde4 make it easier to add a tab to a view 2020-10-02 08:09:42 +10:00
Jesse Duffield c12752cf53 add mutex to views array 2020-10-01 07:01:39 +10:00
Jesse Duffield ca105692cf fix windows build 2020-09-29 20:48:49 +10:00
Jesse Duffield ce6f8ed1bc move models folder into commands folder 2020-09-29 20:48:49 +10:00
Jesse Duffield 83748d78f8 fix tests 2020-09-29 20:48:49 +10:00
Jesse Duffield 72af7e4177 factor out code from git.go 2020-09-29 20:48:49 +10:00
Jesse Duffield 1767f91047 factor out code for loading models 2020-09-29 20:48:49 +10:00
Jesse Duffield 1759ddf247 move OS commands into their own package 2020-09-29 20:48:49 +10:00
Jesse Duffield f9643448a4 move commit files 2020-09-29 20:48:49 +10:00
Jesse Duffield 91f0b0e28f move stash panel 2020-09-29 20:48:49 +10:00
Jesse Duffield 8d2af5cc61 move file and submodule 2020-09-29 20:48:49 +10:00
Jesse Duffield eda4619a4f move remotes and remote branches 2020-09-29 20:48:49 +10:00
Jesse Duffield e849ca3372 move tags 2020-09-29 20:48:49 +10:00
Jesse Duffield 630e446989 move commits model into models package 2020-09-29 20:48:49 +10:00
Jesse Duffield 44248d9ab0 pull branch model out into models package 2020-09-29 20:48:49 +10:00
Jesse Duffield c87b2c02fa fix tests 2020-09-29 18:21:59 +10:00
Jesse Duffield 6e80371535 tell users we're going to reset submodules 2020-09-29 18:21:59 +10:00
Jesse Duffield b4a350259d format code 2020-09-29 18:21:59 +10:00
Jesse Duffield 914fb36173 allow entering and returning from submodule 2020-09-29 18:21:59 +10:00
Jesse Duffield b882ac9e06 support nuking all submodules 2020-09-29 18:21:59 +10:00
Jesse Duffield b8da166ab1 support discarding submodule changes 2020-09-29 18:21:59 +10:00
Jesse Duffield ca437a6504 support submodules 2020-09-29 18:21:59 +10:00
Jesse Duffield 72a31aed76 support opening lazygit in a symlinked submodule 2020-09-29 17:48:21 +10:00
Jesse Duffield 59e117738d missed a spot 2020-09-29 17:42:07 +10:00
Jesse Duffield 75598ea2a1 move git dir env stuff into a centralised package 2020-09-29 17:42:07 +10:00
Jesse Duffield e873816160 do not include bare repos in recent repos list 2020-09-29 17:42:07 +10:00
Jesse Duffield 23626755d7 unset GIT_WORK_TREE and GIT_DIR when switching repos 2020-09-29 17:42:07 +10:00
Jesse Duffield 97af7e677b support bare repositories 2020-09-29 17:42:07 +10:00
Jesse Duffield de482262e1 support setting description in custom command 2020-09-27 11:32:54 +10:00
Jesse Duffield 12f9b1416f better handling of global custom keybindings 2020-09-27 11:11:55 +10:00
Jesse Duffield a09bb5d4d8 better validation messages 2020-09-27 09:49:30 +10:00
Jesse Duffield 7cd17d3a73 support custom command loading text 2020-09-27 09:49:30 +10:00
Jesse Duffield 8a59a4404b rename prompt to input 2020-09-27 09:49:30 +10:00
Jesse Duffield 5724fa534a fallback to value if name not given 2020-09-27 09:49:30 +10:00
Jesse Duffield e7210dd249 better template support for menus and prompts 2020-09-27 09:49:30 +10:00
Jesse Duffield 7d39cc75b2 support menus in custom commands 2020-09-27 09:49:30 +10:00
Jesse Duffield b5066f1d8e support prompts in custom commands 2020-09-27 09:49:30 +10:00
Jesse Duffield 266d8bf0d5 minor fixup 2020-09-27 09:49:30 +10:00
Jesse Duffield da8eac5538 better interface 2020-09-27 09:49:30 +10:00
Jesse Duffield 67bbeb195b support custom keybindings 2020-09-27 09:49:30 +10:00
Jesse Duffield 92183de29e more lenient handling of views not existing 2020-09-26 19:33:22 +10:00
Jesse Duffield 8dae54ab8c fix panic 2020-09-26 11:56:22 +10:00
Jesse Duffield 62a31c27e1 refresh commit files view when needed 2020-09-26 11:52:38 +10:00
Jesse Duffield dd29ee7288 convert to string in a better way because I'm pretty sure alpine needs it 2020-09-26 11:12:47 +10:00
Jesse Duffield fe64f2f4c9 use --no-ext-diff flag for git diff 2020-09-26 11:03:38 +10:00
Jesse Duffield f0a1544ebd more logging 2020-09-26 11:00:50 +10:00
Jesse Duffield 077f113618 add in-built logging support for a better dev experience 2020-09-26 11:00:50 +10:00
Yuki Osaki cc7ea736bb Change the descriptions to lowercase 2020-09-21 15:35:50 +10:00
Yuki Osaki 9dfe1bbadf Update pkg/i18n/english.go
Co-authored-by: Jesse Duffield <jessedduffield@gmail.com>
2020-09-21 15:35:50 +10:00
Yuki Osaki 1fd89b4f46 Be able to copy file name 2020-09-21 15:35:50 +10:00
Jesse Duffield 307d051ec2 smarter checking of git version 2020-09-18 21:02:27 +10:00
Jesse Duffield 14c8b80494 show loading state when amending top commit 2020-09-18 07:58:16 +10:00
Lakshay Garg 10dde518bc Fix numbering in Dutch IntroPopupMessage 2020-09-18 07:47:01 +10:00
Lakshay Garg 1e1c90c92e Fix numbering in English IntroPopupMessage 2020-09-18 07:47:01 +10:00
Jesse Duffield 4954791443 fix test 2020-09-18 07:46:12 +10:00
Jesse Duffield c471f4927a fix test 2020-09-02 20:55:53 +10:00
Jesse Duffield 9eba98302e ensure that when a branch name is ambiguous we still show the correct colours 2020-09-02 10:40:50 +00:00
Francisco Miamoto 250fe740b2 use GetBool instead of casting 2020-08-31 09:22:39 +10:00
Francisco Miamoto 70eda031dc implement config option for disabling force pushing 2020-08-31 09:22:39 +10:00
Francisco Miamoto 86f296a898 add config for disabling force pushing 2020-08-31 09:22:39 +10:00
Jesse Duffield 71ff18318d fast UI update when moving commits in rebase mode 2020-08-29 00:19:31 +00:00
Jesse Duffield 46cce28758 restore donate link 2020-08-28 09:52:56 +10:00
Jesse Duffield 5611d9a3ef gracefully fail due to git version less than 2.0 2020-08-27 12:21:37 +00:00
Jesse Duffield 40bec49de8 more efficient refreshing of rebase commits 2020-08-27 21:51:07 +10:00
Jesse Duffield f99d5f74d4 drop merge commits when interactive rebasing just like git CLI 2020-08-27 21:51:07 +10:00
Jesse Duffield 30a066aa41 remove redundant test 2020-08-27 19:29:22 +10:00
Jesse Duffield 1dcc3363d0 support branches with no upstream 2020-08-27 17:05:07 +10:00
Jesse Duffield c6948582e6 better way of knowing which commits are unpushed 2020-08-26 22:45:55 +00:00
Jesse Duffield 196c83d058 fix bug where cancelling search in menu caused issue 2020-08-26 09:32:57 +00:00
Jesse Duffield 45a0378c01 do not create error panel for sentinel errors 2020-08-25 22:21:15 +00:00
Jesse Duffield afd669194a use clipboard package to handle clipboard stuff 2020-08-26 07:53:43 +10:00
Jesse Duffield 1494a3863d Remove tab keybinding for cycling tab
This keybinding has been more pain than it's worth. Having a tab keybinding
to cycle tabs implies that you can shift+tab and when you shift+tab the
application exits because termbox, our dependency, doesn't know how to
interpret the escape sequence (so it takes it for an actual ESC key which
will exit lazygit at the top level).

If people get mad at me they can set nextBlock-alt to <tab> and they'll have
the functionality back :)
2020-08-25 10:48:13 +00:00
Jesse Duffield f5c55f066b use new branch logic when 'checking out' remote branch 2020-08-25 09:25:17 +00:00
Jesse Duffield 3ebb91c07a better keybinding ('W') for viewing diff 2020-08-24 23:08:05 +00:00
Jesse Duffield 771e87ebeb do not reset cursor unless previous file has moved position 2020-08-24 22:39:01 +00:00
Jesse Duffield e2f3b2b41f add log when git status errors 2020-08-25 08:04:45 +10:00
Jesse Duffield 7ebb8343d1 ignore warning messages about files when obtaining file statuses 2020-08-24 11:53:17 +00:00
Jesse Duffield 44ee28bb2e support alacritty 2020-08-24 09:19:56 +10:00
Jesse Duffield f172f20219 Return whether the context has a parent or not along with that parent
There has got to be a better way around this but if we're returning a Context
from a function (Context is an interface, not a concrete type), even if we
return nil, on the calling end it won't be equal to nil because an interface
value is a tuple of the type and the value meaning it's never itself nil,
unless both values in the tuple are nil.

So we're explicitly returning whether or not the underlying concrete type is nil.
2020-08-23 22:30:32 +00:00
Jesse Duffield 0f7003d939 allow spamming the p key 2020-08-23 11:30:29 +00:00
Jesse Duffield d2d88fe64e fix focus change on merge popup return 2020-08-23 19:28:59 +10:00
Jesse Duffield fa2a385a0c when in the remote branches view, prefill name for creating branch off of remote branch 2020-08-23 19:27:34 +10:00
Jesse Duffield 66bd86b9b7 set keybindings after initialising views 2020-08-23 17:49:58 +10:00
Jesse Duffield 364bdcf532 safer getting of branch 2020-08-23 17:49:58 +10:00
Jesse Duffield ba7e098373 check for missing view when scrolling 2020-08-23 16:05:20 +10:00
Jesse Duffield 9f71c8d2b9 rename Status to PatchStatus 2020-08-23 15:11:06 +10:00
Jesse Duffield fce7cdcc0a enlargen stash window when its focused 2020-08-23 15:11:06 +10:00
Jesse Duffield 4fb52ce2ab better handling of there being no commit files 2020-08-23 15:11:06 +10:00
Jesse Duffield 2915134007 show file statuses in commit files view 2020-08-23 15:11:06 +10:00
Jesse Duffield 2f893bf361 format 2020-08-23 14:29:18 +10:00
Jesse Duffield f815c5607c prefill remote edit prompts 2020-08-23 14:29:18 +10:00
Jesse Duffield 59d61f00a6 hide secondary view when escaping patch building panel 2020-08-23 14:29:18 +10:00
Jesse Duffield 262ff24c5b always reset branch selected index when creating new branch 2020-08-23 14:29:18 +10:00
Jesse Duffield 1189c2fab7 we've now flipped the boolean 2020-08-23 14:29:18 +10:00
Jesse Duffield 3eb3de3edc allow explicitly managing focus 2020-08-23 14:29:18 +10:00
Jesse Duffield 94601b4dc9 use context to return to the correct view 2020-08-23 14:29:18 +10:00
Jesse Duffield 9ca0073cd7 attempt at fixing bad lazyloading 2020-08-23 14:29:18 +10:00
Jesse Duffield 55e6366529 run task for appropriate view 2020-08-23 14:29:18 +10:00
Jesse Duffield bd66162972 fix up patch manager 2020-08-23 14:29:18 +10:00
Jesse Duffield 5cdfd41dca prevent spamming pull or push buttons 2020-08-23 14:29:18 +10:00
Jesse Duffield a95fd581fd fix logic for entering merging panel 2020-08-23 14:29:18 +10:00
Jesse Duffield fda9f4ea7a centralise logic for rendering options map 2020-08-23 14:29:18 +10:00
Jesse Duffield f876d8fdc8 use constants 2020-08-23 14:29:18 +10:00
Jesse Duffield 4198bbae6c ensure there is always a current context 2020-08-23 14:29:18 +10:00
Jesse Duffield ade54b38c1 cleanup 2020-08-23 14:29:18 +10:00
Jesse Duffield 0dd2c869a8 minor refactor 2020-08-23 14:29:18 +10:00
Jesse Duffield ed85ea69bd cleanup of list context file 2020-08-23 14:29:18 +10:00
Jesse Duffield 953298de74 remove dead code 2020-08-23 14:29:18 +10:00
Jesse Duffield 628404e114 use actual keys 2020-08-23 14:29:18 +10:00
Jesse Duffield 5638a40007 carry more mode state across after returning from subprocess 2020-08-23 14:29:18 +10:00
Jesse Duffield d6005dc0eb more accurate comment 2020-08-23 14:29:18 +10:00
Jesse Duffield b3a7acbdad more standardising modes 2020-08-23 14:29:18 +10:00
Jesse Duffield 88ae550b93 unused method 2020-08-23 14:29:18 +10:00
Jesse Duffield 2c3f5be093 comment these things out because we're not using them yet 2020-08-23 14:29:18 +10:00
Jesse Duffield 95a4ca6f8e remove todo comment 2020-08-23 14:29:18 +10:00
Jesse Duffield 23432dd909 remove test 2020-08-23 14:29:18 +10:00
Jesse Duffield 148f601bcb cleanup now that we're always using the same diff command 2020-08-23 14:29:18 +10:00
Jesse Duffield 43d891b8d6 support creating patches from files in diff mode 2020-08-23 14:29:18 +10:00
Jesse Duffield 2eee079d3a minor rename 2020-08-23 14:29:18 +10:00
Jesse Duffield 30a555b108 don't needlessly load every file 2020-08-23 14:29:18 +10:00
Jesse Duffield 8be970e688 stop loading all the diffs at once now that we load them as we go 2020-08-23 14:29:18 +10:00
Jesse Duffield 12bf851c7d faster patch manager 2020-08-23 14:29:18 +10:00
Jesse Duffield c837c54c39 handle diffing and filtering by file in commit files view 2020-08-23 14:29:18 +10:00
Jesse Duffield 5874529f43 deal with the fact that a nil wrapped in an interface is not equal to nil 2020-08-23 14:29:18 +10:00
Jesse Duffield e290710f67 support drilling down into the files of a diff 2020-08-23 14:29:18 +10:00
Jesse Duffield 438abd6003 centralise code for copying to clipboard 2020-08-23 14:29:18 +10:00
Jesse Duffield 442f6cd854 more cherry picking stuff, mostly around the reflog 2020-08-23 14:29:18 +10:00
Jesse Duffield c2b154acad better handling of our different modes and also cherry picking 2020-08-23 14:29:18 +10:00
Jesse Duffield fbd61fcd17 refactor how we handle different modes 2020-08-23 14:29:18 +10:00
Jesse Duffield b1529f19ad more cherry picking code into its own file 2020-08-23 14:29:18 +10:00
Jesse Duffield 134566ed49 move into more appropriate file 2020-08-23 14:29:18 +10:00
Jesse Duffield 8da93fd762 add description field to ListItem interface 2020-08-23 14:29:18 +10:00
Jesse Duffield 63209ef71e try allowing creating branches off the stash too 2020-08-23 14:29:18 +10:00
Jesse Duffield f63ec38aae genericise creating new branches off things 2020-08-23 14:29:18 +10:00
Jesse Duffield f858c8e750 rename to make way for a generic function name 2020-08-23 14:29:18 +10:00
Jesse Duffield 26f80087dd when toggling files reset patch manager if patch ends up empty 2020-08-23 14:29:18 +10:00
Jesse Duffield 0ac402792b allow getting the current item generically 2020-08-23 14:29:18 +10:00
Jesse Duffield 974c6510b8 add sub commit context 2020-08-23 14:29:18 +10:00
Jesse Duffield 41df63cdc4 show when building patch 2020-08-23 14:29:18 +10:00
Jesse Duffield 4080e9b501 only return focus if we already have it 2020-08-23 14:29:18 +10:00
Jesse Duffield 53da858c06 escape patch building mode on hitting escape at the top level 2020-08-23 14:29:18 +10:00
Jesse Duffield 50c9ae863a remove sdump 2020-08-23 14:29:18 +10:00
Jesse Duffield ce20d1b482 remove clipboard option for now because we need a better way of doing it 2020-08-23 14:29:18 +10:00
Jesse Duffield fcf916d138 don't panic 2020-08-23 14:29:18 +10:00
Jesse Duffield f3c87bde88 more 2020-08-23 14:29:18 +10:00
Jesse Duffield 3f7136fc7d missed a spot 2020-08-23 14:29:18 +10:00
Jesse Duffield 59f5f5c1af refactor 2020-08-23 14:29:18 +10:00
Jesse Duffield 1956301b1c better menu item name 2020-08-23 14:29:18 +10:00
Jesse Duffield 1fd0f31682 only show rebasey commands on a local commit when patch building 2020-08-23 14:29:18 +10:00
Jesse Duffield e6a1bd6566 generalise patch building stuff 2020-08-23 14:29:18 +10:00
Jesse Duffield 609f3f4bfa rename Sha to parent now that we're also considering stash entries 2020-08-23 14:29:18 +10:00
Jesse Duffield 9b42cd2214 slightly better 2020-08-23 14:29:18 +10:00
Jesse Duffield 2d90e1e8ee commit files kind of generalised 2020-08-23 14:29:18 +10:00
Jesse Duffield ddf25e14af allowing commit files to be viewed in reflog as well 2020-08-23 14:29:18 +10:00
Jesse Duffield 48f1adad49 stop logging stack 2020-08-23 14:29:18 +10:00
Jesse Duffield 379d37a255 remove unnecessary function 2020-08-23 14:29:18 +10:00
Jesse Duffield a59ac064d2 statically define context keys 2020-08-23 14:29:18 +10:00
Jesse Duffield 433d54fcec WIP constants for context keys 2020-08-23 14:29:18 +10:00
Jesse Duffield 146722beb8 rename to SelectedLineIdx 2020-08-23 14:29:18 +10:00
Jesse Duffield eb5e54e9fd use interface for panel state rather than pointer 2020-08-23 14:29:18 +10:00
Jesse Duffield 99707a527d WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 9ee7793782 remove comment 2020-08-23 14:29:18 +10:00
Jesse Duffield bc410d8e4a use camelCase 2020-08-23 14:29:18 +10:00
Jesse Duffield 7561f5aa32 some more standardisation for diffing 2020-08-23 14:29:18 +10:00
Jesse Duffield 2855b5b4d5 standardise diffmode 2020-08-23 14:29:18 +10:00
Jesse Duffield 419cb9feb8 more standardisation 2020-08-23 14:29:18 +10:00
Jesse Duffield dbf6bb5f27 some more things 2020-08-23 14:29:18 +10:00
Jesse Duffield f601108c5d update naming to refer to context 2020-08-23 14:29:18 +10:00
Jesse Duffield b77abdc5e1 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 2fac2f9f1f WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield e4beaf4de9 more stuff 2020-08-23 14:29:18 +10:00
Jesse Duffield d4f134c6c7 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 7ebed76d16 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 2b812b01e9 more standardisation of rendering 2020-08-23 14:29:18 +10:00
Jesse Duffield 2f5d5034db good progress 2020-08-23 14:29:18 +10:00
Jesse Duffield a32947e7a7 prepare for OnRender prop 2020-08-23 14:29:18 +10:00
Jesse Duffield 2fdadd383a introduce new approach to handling tab states 2020-08-23 14:29:18 +10:00
Jesse Duffield 9a2dc3fe15 stop crash due to context stack not being initialized 2020-08-23 14:29:18 +10:00
Jesse Duffield f0c3d3fc4d centralise setting of main views context 2020-08-23 14:29:18 +10:00
Jesse Duffield 2488e0044d concurrent-safe handling of context state 2020-08-23 14:29:18 +10:00
Jesse Duffield 9c866fd49c more standardisation 2020-08-23 14:29:18 +10:00
Jesse Duffield 6c270b6e26 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield ae1c4536e6 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield f5b22d94d9 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 3c87ff4eff WIP: standardising how we render to main 2020-08-23 14:29:18 +10:00
Jesse Duffield 0f7b2c45d7 centralise split main panel code 2020-08-23 14:29:18 +10:00
Jesse Duffield a12d18146c better logic for taking focus away from popup panels 2020-08-23 14:29:18 +10:00
Jesse Duffield 119d5be1a4 move into list context file 2020-08-23 14:29:18 +10:00
Jesse Duffield fcdc0174d9 rename context file 2020-08-23 14:29:18 +10:00
Jesse Duffield 4f4df8f9cc move context specific keybindings into context file 2020-08-23 14:29:18 +10:00
Jesse Duffield c730271e09 minor update 2020-08-23 14:29:18 +10:00
Jesse Duffield ac0eedda91 lots more stuff 2020-08-23 14:29:18 +10:00
Jesse Duffield e87635295a dont check for error when sending view to bottom 2020-08-23 14:29:18 +10:00
Jesse Duffield 62a662054b hide view if not specified in dimensions object 2020-08-23 14:29:18 +10:00
Jesse Duffield dc183c0d82 no need to set views on top anymore 2020-08-23 14:29:18 +10:00
Jesse Duffield 08e039bea9 return nil when no file selected 2020-08-23 14:29:18 +10:00
Jesse Duffield 88d329c52a WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield fd8a455aff small things
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield ed4574bda9 standardise getting selected item 2020-08-23 14:29:18 +10:00
Jesse Duffield c9ae54a8c8 remove previous view 2020-08-23 14:29:18 +10:00
Jesse Duffield 6fb83b740b WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 7f89113245 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield 0ea0c48631 WIP 2020-08-23 14:29:18 +10:00
Jesse Duffield cec4cb48cb centralise some list view code 2020-08-23 14:29:18 +10:00
Jesse Duffield 1716de3b59 remove space as keybinding for confirmation panel 2020-08-17 20:30:10 +10:00
Jesse Duffield 44d8b3e8f3 allow overriding default confirm/escape keybindings 2020-08-17 18:22:57 +10:00
Jesse Duffield 4f4bb40ea6 support opening lazygit outside a git directory 2020-08-16 22:59:58 +10:00
Jesse Duffield db826b3c87 add keybinding to create new branch off of commit
retain focus in commits panel

surface prompt errors

better description
2020-08-16 22:24:54 +10:00
Jesse Duffield be658e7d64 support multi word editor config 2020-08-16 20:37:40 +10:00
Jesse Duffield 53f06f6a4e prefill commit reword editor 2020-08-16 20:37:24 +10:00
Jesse Duffield c8add47fe7 move cursor to right when using auto prefix 2020-08-16 18:44:39 +10:00
Jesse Duffield 28cd827cea better popups 2020-08-16 09:07:54 +10:00
Jesse Duffield ffda2839e0 remove anonymous reporting popup cos we dont do it anymore anyway 2020-08-16 09:07:54 +10:00
Jesse Duffield 28208e8364 refactor list view 2020-08-15 18:01:43 +10:00
Jesse Duffield 9b7a6934b3 more removing of g 2020-08-15 18:01:43 +10:00
Jesse Duffield 15229bbdab more removing of g and v 2020-08-15 18:01:43 +10:00
Jesse Duffield 63e6eea9ec files view 2020-08-15 18:01:43 +10:00
Jesse Duffield 50d5b9e8e7 status view 2020-08-15 18:01:43 +10:00
Jesse Duffield cc872b0444 menu view 2020-08-15 18:01:43 +10:00
Jesse Duffield 17b84e09c0 fix remote branches select sig 2020-08-15 18:01:43 +10:00
Jesse Duffield 43f8bae267 fix remotes select sig 2020-08-15 18:01:43 +10:00
Jesse Duffield b0fe963f8a fix branches select sig 2020-08-15 18:01:43 +10:00
Jesse Duffield 0822a9296c rename 2020-08-15 18:01:43 +10:00
Jesse Duffield d9fa02c53b clean up interface for popup panels 2020-08-15 18:01:43 +10:00
Jesse Duffield c44ee71ad4 update cheatsheet 2020-08-15 11:41:37 +10:00
Jesse Duffield 826d1660c9 move patch stuff into its own package 2020-08-15 11:41:37 +10:00
Jesse Duffield 291a8e4de0 allow opening files on the selected line in the staging panel 2020-08-15 11:41:37 +10:00
Jesse Duffield f02ccca0e0 add specs to boxlayout package 2020-08-15 09:04:40 +10:00
Jesse Duffield 1e12a60b34 move box layout stuff into its own package 2020-08-15 09:04:40 +10:00
Jesse Duffield 8430b04492 allow configurable main panel split 2020-08-13 21:50:23 +10:00
Jesse Duffield 35b72420ad support accordian mode i.e. expanding focused side panels 2020-08-13 21:50:23 +10:00
Jesse Duffield 28ba142fd6 set minimum confirmation box width 2020-08-13 21:50:23 +10:00
Jesse Duffield b39bcd5c61 more lenient for switching into portrait mode 2020-08-13 21:50:23 +10:00
Jesse Duffield 1fd35f3824 centralise logic for information section
WIP
2020-08-13 21:50:23 +10:00
Jesse Duffield e73937c2bd more work on new layout functionality 2020-08-13 21:50:23 +10:00
Jesse Duffield b51ad4fcea softcode cyclable views 2020-08-13 21:50:23 +10:00
Jesse Duffield d1a7c7283f some more changes 2020-08-13 21:50:23 +10:00
Jesse Duffield b641ecdc74 move some things around 2020-08-13 21:50:23 +10:00
Jesse Duffield 13f567ff4c add portrait mode for when the window is really tall 2020-08-13 21:50:23 +10:00
Jesse Duffield 771d4b5811 refactor how we handle layouts 2020-08-13 21:50:23 +10:00
Jesse Duffield 3c944e0351 support force push after failure 2020-08-12 21:11:24 +10:00
Jesse Duffield e26af258d6 allow rebasing onto remote branch 2020-08-12 20:58:34 +10:00
Jesse Duffield 76e5ec6d45 immediately quit when pressing q in diff or filter mode 2020-08-12 20:44:29 +10:00
Jesse Duffield 27cd12e2d9 accept umlaut keybindings 2020-08-12 20:07:56 +10:00
Jesse Duffield bfaf1c4f70 use remote prefixed branch name when merging remote branch 2020-08-12 20:07:46 +10:00
Jesse Duffield 2d18d089ce allow entering a password when fast forwarding another branch 2020-08-12 18:47:16 +10:00
Jesse Duffield 9c7e40906d rename arg 2020-08-12 18:47:16 +10:00
Jesse Duffield 401f291c3b lowercase function name 2020-08-12 18:47:16 +10:00
Jesse Duffield bea2ae5ff5 stop pulling in general 2020-08-12 18:47:16 +10:00
Jesse Duffield f49e4946f2 minor refactor 2020-08-12 18:47:16 +10:00
Jesse Duffield 8ff74072f8 update config 2020-08-12 18:47:16 +10:00
Jesse Duffield fcd5aea04e support multiple modes of git pull 2020-08-12 18:47:16 +10:00
Jesse Duffield 1c0da2967c update naming 2020-08-12 18:47:16 +10:00
Jesse Duffield 1b78a42b80 pass callback directly 2020-08-12 18:47:16 +10:00
Jesse Duffield 79e73d2eff minor cleanup
WIP
2020-08-12 18:47:16 +10:00
Jesse Duffield 23299f88e9 simplify patch modifier interface 2020-08-09 15:42:20 +10:00
mjarkk ef744e45c1 Update dutch translations 2020-08-08 14:25:11 +10:00
Jesse Duffield 660cc2f3d1 follow cursor when staging and unstaging a file rename 2020-08-07 18:59:56 +10:00
Jesse Duffield 469ac116ef allow renames to be discarded 2020-08-07 18:01:26 +10:00
Axel Navarro d49e75bd3e Add tab keybinding in commit message 2020-07-26 16:28:01 +10:00
Jesse Duffield f4718a9047 allow editing commit files 2020-07-21 18:24:39 +10:00
Jesse Duffield 7d5fe4b66c better logic for staging a renamed file 2020-07-19 14:11:32 +10:00
Jesse Duffield 845c80721f Decouple escaping from quitting
When a user is not entering text into a prompt, the 'q' key should immediately
quit the application. On the other hand, the 'esc' key should cancel/close/go-back
to the previous context.

If we're at the surface level (nothing to cancel/close) and the user hits the
escape key, the default behaviour is to close the app, however we now have a
`quitOnTopLevelReturn` config key to override this.

I actually think from the beginning we should have made this config option
default to false rather than true which is the default this PR gives it,
but I don't want to anger too many people familiar with the existing behaviour.
2020-07-18 20:00:48 +10:00
Jesse Duffield a9cc321981 prompt to create new branch if branch not found 2020-07-17 09:20:50 +10:00
Jesse Duffield 6349214f00 prompt to commit all files if committing with no staged files 2020-07-17 09:01:40 +10:00
Randshot 96f821b841 fix TestGitCommandCommit test
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-15 09:41:16 +10:00
Randshot 964e3872c1 revert changes to 'os_default_platform.go' and 'os_windows.go'
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-15 09:41:16 +10:00
Randshot 5dfa26ea8b use strconv for quoting in 'GitCommand.Commit' and 'OSCommand.ShellCommandFromString'
use raw strings for the escaped quotes in 'os_default_platform.go' and 'os_windows.go'

Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-15 09:41:16 +10:00
Randshot 014e06eefd factor out duplicate code into 'ShellCommandFromString'
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-14 08:26:53 +10:00
Randshot 39a2122dc0 add quotes around the git commit command on non-windows systems
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-14 08:26:53 +10:00
Randshot 570d27ffaa
Merge branch 'master' into add-overrideGpg-switch
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-12 11:47:35 +02:00
Randshot 21e478dd59 fix 'Amend commit using gpg' test
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-12 14:06:53 +10:00
Randshot d14fb36cb9 fix 'Commit using gpg' test
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-12 14:06:53 +10:00
Randshot 19a808642f fix platform specific quoting when using GPG
fixes #620

Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-12 14:06:53 +10:00
Jasper Mendiola e921ba0910 Remove getLocalGitConfig 2020-07-10 18:55:00 +10:00
Jasper Mendiola 0f5a073d57 Rename appconfig to config 2020-07-10 18:55:00 +10:00
Jasper Mendiola cb0bdd89c0 fix tests 2020-07-10 18:55:00 +10:00
Jasper Mendiola e89bf5d06b add oneline-graph 2020-07-10 18:55:00 +10:00
Randshot 65e955c622
add overrideGpg switch, which prevents lazygit from spawning a separate process when using GPG
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-05-30 23:39:07 +02:00
Dima Kotik e73f4c6b7e Better CWD check for a git repository. 2020-05-30 00:31:58 +10:00
Jesse Duffield cf5cefb2d6 allow user to scroll themselves inside merge panel 2020-05-19 18:44:53 +10:00
Jesse Duffield 36ac764133 fix race condition when scrolling to merge conflict 2020-05-19 18:05:14 +10:00
Jesse Duffield 003e45d2f5 allow creating branches off of remote branches 2020-05-19 09:57:37 +10:00
Jesse Duffield 04e93317b8 fix https://github.com/jesseduffield/lazygit/issues/848 2020-05-19 09:57:37 +10:00
Jesse Duffield f8dedb710b additional password prompt regex 2020-05-15 22:18:07 +10:00
Jesse Duffield 1c259f69f6 check if user has configured to push to current by default 2020-05-15 21:41:23 +10:00
Jesse Duffield 913f17ee3e prevent flicker from bolding background of selected line 2020-05-15 21:12:12 +10:00
Jesse Duffield 267730bc00 standardise how we handle background colours 2020-05-13 21:24:25 +10:00
Gary Yendell 7ed8ee160d Add option to split patch into a new commit
Add GetHeadCommitMessage to read the subject of the HEAD commit
Create PullPatchIntoNewCommit based heavily on PullPatchIntoIndex to
  split the current patch from its commit and apply it in a separate
  commit immediately after.

WIP to Squash - Fill format string with format string

WIP
2020-05-09 11:59:37 +10:00
Tyler Davis b5404c6159 fix issue #640 add catCmd and OS-specific values
Add a catCmd to the Platform struct and set the value to "cat" for
non-windows builds and "type" for windows builds.
2020-04-27 19:14:18 +10:00
Jesse Duffield cc13ae252a totally screwed up the last commit 2020-04-22 11:21:20 +10:00
Jesse Duffield b97f844a3e handle comments in todo files 2020-04-22 11:15:41 +10:00
Glenn Vriesman 1d6eb015c1 fix: fixed yaml typo
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-04-22 08:52:08 +10:00
Jesse Duffield 07a8ae8c3e add handler for searching in menu 2020-04-21 19:28:31 +10:00
Jesse Duffield f05a5e531e warnings for stash actions 2020-04-20 18:57:08 +10:00
Kristijan Husak 68586ec49a Handle regex compilation errors and show them to the user. 2020-04-20 18:47:50 +10:00
Kristijan Husak 6cf75af0af Add option to set predefined commit message prefix. Fixes #760. 2020-04-20 18:47:50 +10:00
Jesse Duffield 304607ae5d support configurable merge args 2020-04-20 18:40:49 +10:00
Jesse Duffield e9f28855a2 add bugfix git flow option 2020-04-20 18:31:13 +10:00
Glenn Vriesman 66d7d5f312 fix: fixed gpg breaking terminal
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-04-20 18:30:57 +10:00
Jesse Duffield 59734f1069 whoops 2020-04-17 09:27:23 +10:00
Jesse Duffield 2974a57943 support copying stuff to clipboard 2020-04-15 10:44:56 +00:00
Jesse Duffield 97d7a8ad0c add reverse patch option 2020-03-29 21:53:25 +00:00
Jesse Duffield b89ba365d0 unbold diff info 2020-03-29 18:31:19 +11:00
Jesse Duffield 47ff388549 some more UI logic 2020-03-29 18:26:24 +11:00
Jesse Duffield 647ab9bf0f better keybinding 2020-03-29 18:26:24 +11:00
Jesse Duffield 76431b4673 simplify things 2020-03-29 18:26:24 +11:00
Jesse Duffield be0dd29e3a don't support files until we understand the use case 2020-03-29 18:26:24 +11:00
Jesse Duffield 40fbce91ce add new diff mode
WIP

WIP

WIP

WIP

WIP

WIP

WIP
2020-03-29 18:26:24 +11:00
Jesse Duffield 33d287d2f0 remove old diff mode code 2020-03-29 18:26:24 +11:00
Jesse Duffield 9eb1cbc514 reset main's origin when cycling views 2020-03-29 02:36:01 +00:00
Jesse Duffield 40b173118a fix conflict race condition 2020-03-29 02:36:01 +00:00
Jesse Duffield 8822c409e2 split reflog commits into ReflogCommits and FilteredReflogCommits 2020-03-29 11:37:29 +11:00
Jesse Duffield aa750c0819 load reflog commits manually when in filter mode for branches panel 2020-03-29 11:37:29 +11:00
Jesse Duffield d90d9d7330 reset state on each Run() call 2020-03-29 11:37:29 +11:00
Jesse Duffield a8db672ffb refactor gui.go 2020-03-29 11:37:29 +11:00
Jesse Duffield 76b66ae26f properly reset gui state when restarting or coming back from a subprocess 2020-03-29 11:37:29 +11:00
Jesse Duffield a2790cfe8e rename to filtered mode 2020-03-29 11:37:29 +11:00
Jesse Duffield 624ae45ebb allow scoped mode where the commits/reflog/stash panels are scoped to a file
WIP

restrict certain actions in scoped mode

WIP
2020-03-29 11:37:29 +11:00
Jesse Duffield 2756b82f57 fix width of half screen mode 2020-03-29 11:37:29 +11:00
Jesse Duffield 52f41ab0d5 update cheatsheet 2020-03-28 03:16:44 +00:00
Jesse Duffield fbb767893e support lazyloading in commits view 2020-03-28 14:02:53 +11:00
Jesse Duffield 229f5ee48c add keybindings for paging in list panels and jumping to top/bottom 2020-03-28 14:02:53 +11:00
Jesse Duffield 517b7d0283 fix up some things with the patch handling stuff 2020-03-28 13:19:35 +11:00
Jesse Duffield 0c0231c3e8 autostash changes when pulling file into index 2020-03-28 13:19:35 +11:00
Jesse Duffield a9559a5c87 move working tree state function into git.go 2020-03-28 13:19:35 +11:00
Jesse Duffield 814ee24c8d better error handling 2020-03-28 11:59:45 +11:00
Jesse Duffield 7876cddf4a remove dead code 2020-03-28 11:59:45 +11:00
Jesse Duffield e9051355a1 fix test 2020-03-28 11:59:45 +11:00
Jesse Duffield 29316a528a better documentation 2020-03-28 11:59:45 +11:00
Jesse Duffield 036b53acf8 in fact we don't need any of these options 2020-03-28 11:59:45 +11:00
Jesse Duffield 919463ff02 actually don't even bother limiting 2020-03-28 11:59:45 +11:00
Jesse Duffield 3f7ec3f3b8 load reflog commits in two stages to speed up startup time 2020-03-28 11:59:45 +11:00
Jesse Duffield 19604214d7 discard old reflog commits when in new context 2020-03-28 11:59:45 +11:00
Jesse Duffield f7add8d788 smarter refreshing for tags and remotes 2020-03-28 11:59:45 +11:00
Jesse Duffield d97c230747 stop switching focus to commit files view while staging line by line 2020-03-28 11:59:45 +11:00
Jesse Duffield 906a49049e smart refreshing files 2020-03-28 11:59:45 +11:00
Jesse Duffield c1a4bd0482 more smart refreshing
WIP

WIP

WIP

WIP

WIP

fix how diff entries are handled

WIP

WIP

WIP

WIP

WIP

WIP
2020-03-28 11:59:45 +11:00
Jesse Duffield d0336fe16f better presentation of remotes 2020-03-28 11:59:45 +11:00
Jesse Duffield 61b4bbf74e clean up signature 2020-03-28 11:59:45 +11:00
Jesse Duffield 384c2e13d7 better refreshing for stash 2020-03-28 11:59:45 +11:00
Jesse Duffield 198d237679 more centralised handling of refreshing 2020-03-28 11:59:45 +11:00
Jesse Duffield 39315ca1e2 use wait groups when refreshing 2020-03-28 11:59:45 +11:00
Jesse Duffield efb51eee96 more efficient refreshing 2020-03-28 11:59:45 +11:00
Jesse Duffield fbbd16bd82 use reflogs from state to work out branch recencies 2020-03-28 11:59:45 +11:00
Jesse Duffield bd2c1eef53 remove redundant fetch of reflog 2020-03-28 11:59:45 +11:00
Jesse Duffield d1395b15bb use GIT_EDITOR 2020-03-27 19:26:14 +11:00
Máximo Cuadros 2d8ed5e274 *: update go-git import 2020-03-27 19:06:21 +11:00
Jesse Duffield 95b147079f allow applying patch directly 2020-03-26 21:44:45 +11:00
Jesse Duffield 83757f1065 limit size of menu panel 2020-03-26 21:44:33 +11:00
Jesse Duffield f2036b42e5 only load new reflog entries 2020-03-26 21:44:33 +11:00
Jesse Duffield 21b7d41845 relax limit on commit list and reset on branch change 2020-03-26 21:44:33 +11:00
Jesse Duffield 91a404d033 separate commits from cherry pick state 2020-03-26 21:44:33 +11:00
Jesse Duffield d027cf969c better handling of current branch name 2020-03-26 20:37:06 +11:00
Jesse Duffield 37acc17cf3 more lenient getting of short shas 2020-03-26 18:30:02 +11:00
Dawid Dziurla c831ad39c9 pkg: use upstream pty package 2020-03-25 21:26:15 +11:00
Jesse Duffield bbcc4b7b70 just disallow undo/redo while rebasing because you need more info than just the reflog 2020-03-25 09:39:04 +11:00
Jesse Duffield 45bba0a3c5 ignore redundant actions when undoing and redoing 2020-03-25 09:39:04 +11:00
Jesse Duffield d105e2690a vastly improve the logic for undo and redo 2020-03-25 09:39:04 +11:00
Jesse Duffield 32d3e497c3 fix tests 2020-03-25 09:39:04 +11:00
Jesse Duffield 30a5d1b486 move into undoing file 2020-03-25 09:39:04 +11:00
Jesse Duffield 6b3ea56add refactor undo and redo 2020-03-25 09:39:04 +11:00
Jesse Duffield c3aefdb98e stateless undos and redos 2020-03-25 09:39:04 +11:00
Jesse Duffield 094939451d more explicit env vars 2020-03-25 09:39:04 +11:00
Jesse Duffield 0e23f44b84 support reflog action prefix 2020-03-25 09:39:04 +11:00
Jesse Duffield daecdd7c2b redoing 2020-03-25 09:39:04 +11:00
Jesse Duffield 7c8df28d01 add waiting status to checkout ref handler 2020-03-25 09:39:04 +11:00
Jesse Duffield 65917272a2 undoing status 2020-03-25 09:39:04 +11:00
Jesse Duffield 137fd80fdb note that undo functionality is experimental 2020-03-25 09:39:04 +11:00
Jesse Duffield 98fbc61221 better formatted reflog list 2020-03-25 09:39:04 +11:00
Jesse Duffield f80d15062b use reflog undo history pointer 2020-03-25 09:39:04 +11:00
Jesse Duffield b1b0219f04 autostash changes when hard resetting 2020-03-25 09:39:04 +11:00
Jesse Duffield b1941c33f7 undo via rebase 2020-03-25 09:39:04 +11:00
Jesse Duffield 5d460e1e5e add tab keybindings 2020-03-23 23:25:00 +11:00
Jesse Duffield 3d3e0be7bd more compatible commands 2020-03-23 22:33:17 +11:00
Jesse Duffield 3aab37611a show status of selected cherry picked commits 2020-03-19 21:42:21 +11:00
Jesse Duffield 8fbcc36331 allow resetting cherry picked commits selection 2020-03-19 21:42:21 +11:00
Jesse Duffield dadb646252 fix branch building 2020-03-19 12:04:17 +11:00
Jesse Duffield 0227b93409 fix branch parser 2020-03-18 23:26:02 +11:00
Jesse Duffield b0ec0821d5 fix docs 2020-03-18 22:50:35 +11:00
hitsuji_no_shippo 13a7806cac add opne menu keybindings in docs 2020-03-18 22:50:35 +11:00
hitsuji_no_shippo 41c76fb748 add close menu keybindings in docs 2020-03-18 22:50:35 +11:00
hitsuji_no_shippo ac0c3b9f92 fix search keybindings in docs 2020-03-18 22:50:35 +11:00
Jesse Duffield 1be0ff8da7 better upstream tracking and allow renaming a branch 2020-03-18 21:29:06 +11:00
hitsuji_no_shippo 2169b5109f add search keybings in docs 2020-03-11 19:43:22 +11:00
Jesse Duffield 7df4b736cf be a bit more lenient 2020-03-09 12:41:41 +11:00
Jesse Duffield e47ad846c4 big golangci-lint cleanup 2020-03-09 12:23:13 +11:00
Jesse Duffield 19146d61b1 use selected branch as base when creating a new branch 2020-03-08 18:44:15 +11:00
skwerlman e541b809ce update tests to match changed command 2020-03-06 09:25:31 +11:00
skwerlman 6ca08c6519 make branches and files non-ambiguous for git-log
fixes #694
2020-03-06 09:25:31 +11:00
Jesse Duffield 31e201ca52 allow configuring side panel width 2020-03-04 00:12:23 +11:00
Jesse Duffield b3522c48d9 refactor 2020-03-04 00:12:23 +11:00
Jesse Duffield 0fc58a7986 fix test 2020-03-04 00:12:23 +11:00
Jesse Duffield 54241d8ab9 more generic way of supporting custom pagers 2020-03-04 00:12:23 +11:00
Jesse Duffield 355f1615ab supporing custom pagers step 1 2020-03-04 00:12:23 +11:00
William Wagner Moraes Artero 3ce2b9b79a chore: keeping coverage up :D 2020-03-01 10:57:12 +11:00
William Wagner Moraes Artero a79182e50d fix: accidentally escaped %s 2020-03-01 10:57:12 +11:00
William Wagner Moraes Artero 0eb3090ad6 fix: owner groups (GitLab) 2020-03-01 10:57:12 +11:00
William Wagner Moraes Artero 6ea25bd259 feat: flexible service configuration 2020-03-01 10:57:12 +11:00
William Wagner Moraes Artero fe5f087f9c feat: configurable services 2020-03-01 10:57:12 +11:00
Jesse Duffield 79299be3b2 better keybindings for patch building mode 2020-02-29 18:48:10 +11:00
Jesse Duffield 4c9b620bd0 better keybindings for staging by line 2020-02-29 18:48:10 +11:00
Jesse Duffield a7508a5dfd fix cheatsheet script to support different contexts 2020-02-29 17:46:00 +11:00
David Chen a9fe0b8000 set --abbrev-commit to return 8-digit hash strings 2020-02-27 18:05:41 +11:00
David Chen 5af7b0235e fix #680: unpushed commits still appear to be green instead of red 2020-02-27 18:05:41 +11:00
Corentin Rossignon bf946200e9 Fix OutOfBound array access when looking for ReflogCommits
refs #679
2020-02-27 09:34:40 +11:00
Jesse Duffield 890cc87724 fix bug where commits appeared as green despite not being pushed 2020-02-27 09:33:09 +11:00
Jesse Duffield 8eb0b0f4ca do not close over variables in a function 2020-02-25 22:09:43 +11:00
Jesse Duffield e6a8dc0bcf better logic for checking if we're rebasing 2020-02-25 22:09:43 +11:00
Jesse Duffield 02c497fad6 show file list when diffing commits 2020-02-25 21:38:38 +11:00
Jesse Duffield d0ab747479 color active frames green by default 2020-02-25 21:27:50 +11:00
Jesse Duffield f94d0be2c9 refactor the way we render lists 2020-02-25 21:21:07 +11:00
Jesse Duffield 9fd9fd6816 better commit lines in fullscreen mode 2020-02-25 21:21:07 +11:00
Jesse Duffield 8ad01fe32f refresh commits when adding a tag 2020-02-25 09:10:23 +11:00
Jesse Duffield fdb543fa7d add half and fullscreen modes 2020-02-25 08:45:30 +11:00
Jesse Duffield 52b5a6410c show item counts in frames 2020-02-25 07:19:46 +11:00
Jesse Duffield 0034cfef5c show tags in commits panel 2020-02-24 23:13:54 +11:00
Jesse Duffield 78b62be96f better handling of clearing the search 2020-02-24 22:18:04 +11:00
Jesse Duffield 1f5ccab1ce eagerload commits when searching 2020-02-24 22:18:04 +11:00
Jesse Duffield 46be280c92 support searching in side panels
For now we're just doing side panels, because it will take more work
to support this in the various main panel contexts
2020-02-24 22:18:04 +11:00
Jesse Duffield 2a5763a771 switch custom command keybinding to ':' 2020-02-24 22:04:39 +11:00
Jesse Duffield 370cec098b show diff stat 2020-02-24 09:20:50 +11:00
Dawid Dziurla 49a2f0191f tasks: don't use a function that requires Go 1.12 2020-02-24 09:09:27 +11:00
Jesse Duffield fabdda0492 allow customizing background color in staging mode 2020-02-23 18:37:19 +11:00
Glenn Vriesman 6fc3290a05 Reflog: Use 20 sha digits instead of 7
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-20 08:34:01 +11:00
Jesse Duffield 66e6369c28 allow fastforwarding the current branch 2020-02-18 23:07:38 +11:00
Jesse Duffield 0f0da9c32a fix wording 2020-02-16 09:57:49 +11:00
Jesse Duffield 0a69c1a02d add reset to reflog commit menu 2020-02-16 09:57:49 +11:00
Jesse Duffield feaf98bd01 add reset to upstream option on files panel 2020-02-16 09:57:49 +11:00
Jesse Duffield 0fe9c15ce8 add mixed option to HEAD resetting, remove @{upstream} 2020-02-16 09:57:49 +11:00
Jesse Duffield f528e12c83 allow resetting to tag 2020-02-16 09:57:49 +11:00
Jesse Duffield 8ca9f93ccf allow resetting to remote branch 2020-02-16 09:57:49 +11:00
Jesse Duffield 73d8064837 allow resetting to branch 2020-02-16 09:57:49 +11:00
Jesse Duffield 5b1f60b7eb refactor create reset menu logic 2020-02-16 09:57:49 +11:00
Jesse Duffield 2e1344f611 fix specs 2020-02-15 08:47:36 +11:00
Jesse Duffield 5b9996b16f remove old createMenu function 2020-02-15 08:47:36 +11:00
Jesse Duffield 6fdc1791e4 refactor stash options menu 2020-02-15 08:47:36 +11:00
Jesse Duffield fd4f37b5c3 refactor git flow menu 2020-02-15 08:47:36 +11:00
Jesse Duffield d76e8887e5 refactor patch options menu panel 2020-02-15 08:47:36 +11:00
Jesse Duffield eb9134685a refactor rebase menu panel 2020-02-15 08:47:36 +11:00
Jesse Duffield d929b84786 refactor recent repos menu panel 2020-02-15 08:47:36 +11:00
Jesse Duffield 8ef3297b11 refactor reflog reset options panel 2020-02-15 08:47:36 +11:00
Jesse Duffield 27c7aeb117 refactor workspace reset options panel 2020-02-15 08:47:36 +11:00
Jesse Duffield c9714600e8 refactor commit reset menu 2020-02-15 08:47:36 +11:00
Jesse Duffield 665fdded14 continue refactor of menu panel 2020-02-15 08:47:36 +11:00
Jesse Duffield 814a0ea36f begin refactor of menu panel 2020-02-15 08:47:36 +11:00
Jesse Duffield 71e018a3dd get whole commit SHA from rebase commits 2020-02-13 18:10:14 +11:00
Jesse Duffield efb26f8b60 refresh current branch graph when side panels refresh 2020-02-10 19:05:55 +11:00
Glenn Vriesman d9eb6e2682 Fixed tests
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-09 23:47:22 +11:00
Glenn Vriesman b74107f2ba Use 8 instead of 7 digit long sha
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-09 23:47:22 +11:00
Glenn Vriesman 0cd91a10c6 Increase internal sha size
This does not change the sha size that is displayed to the user

Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-09 23:47:22 +11:00