Commit graph

1496 commits

Author SHA1 Message Date
Ryooooooga add3e8783e
Fix crash on remove tracked files #1480 2021-09-21 18:51:18 +09:00
black_desk 66d0fd2133 Format code to pass lint 2021-09-16 21:38:43 +08:00
Dwarven YANG 63072af5bc allow user to configure the gui language 2021-08-30 09:12:29 +10:00
Ryooooooga c3d7de1c18 Change not to use cat command 2021-08-25 21:32:48 +10:00
Mark Kopenga 487ad196a7
Merge pull request #1413 from Ryooooooga/feature/edit-line
Make os.editCommand customizable using template
2021-08-23 10:15:38 +02:00
Mark Kopenga 2eeff1257b
Merge pull request #1432 from black-desk/moved-submodule
fix moved submodule
2021-08-17 10:10:22 +02:00
Mark Kopenga c878f34ff1
Merge pull request #1438 from Ryooooooga/feature/rename-files-with-modification
Fix staged renamed file with unstaged in file pane #1408
2021-08-16 17:29:08 +02:00
Ryooooooga d073932cec
Fix stash submodule #1436 2021-08-16 23:36:16 +09:00
Ryooooooga a2f7fcd730
Remove unused constant 2021-08-16 23:21:46 +09:00
Ryooooooga f96674b24b
Fix error when filename contains -> 2021-08-16 23:15:37 +09:00
Ryooooooga a553f7fb77
Fix staged renamed file with unstaged changes displays incorrectly in Files view #1408 2021-08-16 20:05:59 +09:00
Mark Kopenga 6c415d1341
Merge pull request #1434 from Ryooooooga/feature/fix-quote-in-filename
the patch panel would crash if the filename contained an odd number of double quotes
2021-08-16 09:52:06 +02:00
Ryooooooga b21ac990ea
fix submodule command escaping #1436 2021-08-16 12:34:52 +09:00
Ryooooooga 0740409f43
fix test 2021-08-13 22:15:06 +09:00
Ryooooooga 37700908cc
fix checkout file command 2021-08-13 21:49:40 +09:00
Ryooooooga 488c43aaa2
fix crash when double quotes in filename #1433 2021-08-13 21:39:38 +09:00
black_desk bb4fe2653b fix moved submodule 2021-08-13 17:03:37 +08:00
black_desk 66d735acb5
Update pkg/commands/files.go
Co-authored-by: Mark Kopenga <mkopenga@gmail.com>
2021-08-13 16:41:23 +08:00
black_desk d51b065f2a fix empty patch panel when spaces in filename 2021-08-13 14:02:11 +08:00
Ryooooooga ac609bd37c
fix backward compatibility 2021-08-04 18:43:34 +09:00
Ryooooooga 67cc65930a
fix out of range error 2021-08-03 22:00:28 +09:00
Ryooooooga 4f66093335
introduce edit command template to open a specifig line of a file 2021-08-03 21:42:14 +09:00
Jesse Duffield d626bcac00 color fixups 2021-08-01 16:14:56 +10:00
Jesse Duffield 117c0bd4f7 simplify code a bit 2021-07-31 17:33:13 +10:00
mjarkk 79848087bc Switch to github.com/gookit/color for terminal colors 2021-07-30 15:14:46 +02:00
Jesse Duffield 58ddbae4d1 Minor refactor 2021-07-27 21:30:08 +10:00
Denis Palashevskii d1134daa53 review fixes: PR URL refactoring, target branch selection prompt 2021-07-27 21:30:08 +10:00
Denis Palashevskii 63cb304a82 Fix translations, make formatter happy 2021-07-27 21:30:08 +10:00
Denis Palashevskii d5ec0fdcd1 Remove doubled string formatting in pull request URL generation 2021-07-27 21:30:08 +10:00
Denis Palashevskii 0a63f701e5 Apply suggestions from code review
Co-authored-by: Mark Kopenga <mkopenga@gmail.com>
2021-07-27 21:30:08 +10:00
Denis Palashevskii 755cc9f8d8 Add tests 2021-07-27 21:30:08 +10:00
Denis Palashevskii 0e6598adbd Implement pull request options menu 2021-07-27 21:30:08 +10:00
Denis Palashevskii f2645da16a Extract git service URL formatting to a separate method 2021-07-27 21:30:08 +10:00
Francisco Miamoto f8f596d097 add tests for open file cmd on linux 2021-07-27 20:28:00 +10:00
Francisco Miamoto 028cb2be2f add extra quoting for shell cmd string on linux
This solves an issue where we could not open files with names that contained
spaces and single quotes.
It also  solves an issue of variable expansion for files with some kind
of environment variables on the name e.g. '$USER.txt'
2021-07-27 20:28:00 +10:00
Mark Kopenga f4874bbb74
Merge pull request #1396 from mjarkk/fix-1385
branches check for split parts length
2021-07-26 11:22:33 +02:00
mjarkk 3a0a9ec33b branches check for split parts length 2021-07-26 11:07:42 +02:00
mjarkk 9a087d04eb Change the way file statuses are loaded
This makes it so file statuses recived from git no longer get joined
before spliting them again.
2021-07-22 22:12:43 +02:00
Davyd McColl ae2496cf80 🎨 prefer the long switch over the short one for easier reading 2021-07-01 17:13:14 +10:00
Davyd McColl eb10ddfccc add a test around ignoring whitespace 2021-07-01 17:13:13 +10:00
Davyd McColl 3f96537380 update test to pass in default ignore-whitespace flag (false) 2021-07-01 17:13:13 +10:00
Davyd McColl a9f04d3925 facilitate toggling whitespace in the diff view with a hotkey (c-w by default) 2021-07-01 17:13:13 +10:00
Emiliano Ruiz Carletti 01e4467d76 Add test cases for pull mode 2021-06-15 08:31:07 +10:00
Emiliano Ruiz Carletti b4e6850f98 Fix wrong ff-only configuration 2021-06-15 08:31:07 +10:00
Jesse Duffield 9fdf92b226 more refactoring
WIP

WIP
2021-06-06 09:12:49 +10:00
Jesse Duffield fb395bca6e support reverting merge commits 2021-06-05 22:15:51 +10:00
Jesse Duffield d502c43ae8 fix tests 2021-06-05 10:58:36 +10:00
caojoshua e7c657fba0 Docs for EditCommand. 2021-06-05 10:58:09 +10:00
caojoshua 60468d2e17 Edit command as user OS config option 2021-06-05 10:58:09 +10:00
Robert Verst cb78cf7de4 Simplify sorting of git tags by using git's functions 2021-06-05 10:56:46 +10:00
Robert Verst 94b52af661 Remove config, make default sort order descending 2021-06-05 10:56:46 +10:00
Robert Verst 472288c81b Add user config to change the sort order of tags 2021-06-05 10:56:46 +10:00
Jesse Duffield 98375dc902 refactor merge panel 2021-04-18 18:58:09 +10:00
Jesse Duffield e73de332a1 refactor line by line panel 2021-04-18 16:55:09 +10:00
Jesse Duffield 069c7c9d35 fix test 2021-04-11 17:07:49 +10:00
Jesse Duffield 8969464b00 log TODO content when interactive rebasing 2021-04-11 17:07:49 +10:00
Jesse Duffield 6137d66914 no need to log this 2021-04-11 17:07:49 +10:00
Jesse Duffield 6fbe660f96 full coverage for logging commands 2021-04-11 17:07:49 +10:00
Jesse Duffield 74320f0075 more logging of commands 2021-04-11 17:07:49 +10:00
Jesse Duffield bfad972f0c fix bug where mixed reset is actually a soft reset 2021-04-11 17:07:49 +10:00
Jesse Duffield bb918b579a start adding support for logging of commands 2021-04-11 17:07:49 +10:00
Jesse Duffield e145090046 add cmdLog panel 2021-04-11 17:07:49 +10:00
Jesse Duffield 9f4433d8b5 allow opening merge tool 2021-04-11 10:21:53 +10:00
Jesse Duffield e42e7e5cbd fix commit amend 2021-04-10 11:54:38 +10:00
Jesse Duffield 963fcc1444 don't kill the index.lock file until I decide whether it's actually a good idea 2021-04-06 19:34:32 +10:00
Jesse Duffield 20bdba15f6 amend reword test 2021-04-06 19:34:32 +10:00
Jesse Duffield e636857057 prevent adding staged files when renaming top commit 2021-04-06 19:34:32 +10:00
Jesse Duffield e04e2ebab5 try better logging for CI 2021-04-06 19:34:32 +10:00
Jesse Duffield 5ce9e0193a add retry logic for running git commands to avoid index.lock problems 2021-04-06 19:34:32 +10:00
Jesse Duffield c33f8d2790 prevent git from prompting user if program is run directly 2021-04-06 19:34:32 +10:00
Jesse Duffield 8901d11674 fix merge conflict cat issue on windows 2021-04-02 13:15:07 +11:00
Jesse Duffield 7d62f103e4 big refactor to give our enums actual types 2021-04-02 11:00:15 +11:00
Jesse Duffield 9e85d37fb9 refactor to no longer call these things file changes 2021-04-02 11:00:15 +11:00
Jesse Duffield 50c169e0a3 better colouring for directories for when adding a patch 2021-04-02 11:00:15 +11:00
Jesse Duffield 7364525bf5 do not show commit files of another parent as added to the patch 2021-04-02 11:00:15 +11:00
Jesse Duffield 54910fdb76 refactor 2021-04-02 11:00:15 +11:00
Jesse Duffield 332a3c4cbf file tree for commit files 2021-04-02 11:00:15 +11:00
Jesse Duffield eb54189683 support GIT_EDITOR 2021-04-01 20:40:02 +11:00
Jesse Duffield e8e59306fc shell out custom commands 2021-04-01 20:25:30 +11:00
Jesse Duffield 8af3fe3b4a faster startup 2021-04-01 09:13:29 +11:00
Jesse Duffield d5639e6e95 refactor 2021-03-30 21:57:00 +11:00
Jesse Duffield 9e67f74ca3 prevent staging directory containing files with inline merge conflicts 2021-03-30 21:57:00 +11:00
Jesse Duffield d2e1b35eee small fixes 2021-03-30 21:57:00 +11:00
Jesse Duffield ef204b0adf remove collapsed field 2021-03-30 21:57:00 +11:00
Jesse Duffield 89c2f4f2ff fix spec 2021-03-30 21:57:00 +11:00
Jesse Duffield 5e05e8b62b fix comment 2021-03-30 21:57:00 +11:00
Jesse Duffield 1f7273af23 better way to check if a node is a leaf 2021-03-30 21:57:00 +11:00
Jesse Duffield 2b8302bced refactor 2021-03-30 21:57:00 +11:00
Jesse Duffield 1b94462410 rename some things 2021-03-30 21:57:00 +11:00
Jesse Duffield 46b79c7c61 drop Name field from status line node 2021-03-30 21:57:00 +11:00
Jesse Duffield fe4e305410 safer code 2021-03-30 21:57:00 +11:00
Jesse Duffield 1183f68e19 better handling of refreshed files 2021-03-30 21:57:00 +11:00
Jesse Duffield da6fe01eca allow toggling on/off file tree mode 2021-03-30 21:57:00 +11:00
Jesse Duffield c27cea6f30 more file tree improvements 2021-03-30 21:57:00 +11:00
Jesse Duffield cd0532b4d6 allow ignoring directories 2021-03-30 21:57:00 +11:00
Jesse Duffield c9de6c003b support some more things 2021-03-30 21:57:00 +11:00
Jesse Duffield 418621a9ff support discarding changes in dir 2021-03-30 21:57:00 +11:00
Jesse Duffield def68ddc8f fix bug for combining directories with single child 2021-03-30 21:57:00 +11:00
Jesse Duffield a31db3df9c support toggling collapsed 2021-03-30 21:57:00 +11:00
Jesse Duffield 79079b54ea combining nodes when only one child exists 2021-03-30 21:57:00 +11:00
Jesse Duffield 77a7619690 showing changes for directories 2021-03-30 21:57:00 +11:00
Jesse Duffield 9f2d7adb8e more improvements 2021-03-30 21:57:00 +11:00
Jesse Duffield 45939171ea WIP
start moving to new interface

WIP

WIP

WIP

WIP

WIP
2021-03-30 21:57:00 +11:00
Jesse Duffield ad1468f66f better handling of discarding files 2021-03-20 12:46:27 +11:00
Jesse Duffield 058bcddc53 fix renamed files looking wrong 2021-03-14 13:24:51 +11:00
Jesse Duffield 03de51747e remove redundant addition 2021-03-13 11:03:34 +11:00
Ryooooooga 3d698cd7c1 Fix tests 2021-03-13 11:02:31 +11:00
Ryooooooga a48cc245e7 Support multibyte characters in pane 2021-03-13 11:02:31 +11:00
Ryooooooga 9ed3a8ee05 Fix staging/unstaging filenames that starts with - or -- 2021-03-13 11:02:31 +11:00
Ryooooooga 64daf1310d Fix staging/unstaging files containing " in paths 2021-03-13 11:02:31 +11:00
Ryooooooga e5ba0d9d9c Support multibyte characters in Files pane 2021-03-13 11:02:31 +11:00
Ryooooooga 50e4e9d58d fix command escaping 2021-03-13 10:49:40 +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
unknown 922c0887f1 fix type: executable not found error when there is a merge conflict on windows 2021-01-01 13:17:29 -08:00
Yuki Osaki 4928d1d490 Visualize the commits for all branches 2020-11-28 19:19:47 +11:00
Jesse Duffield 999e170f1d standardise how we read from the config 2020-11-28 10:45:30 +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
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 b1dd3c4866 support rebinding confirm/newline keys in editor 2020-10-13 08:21:09 +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 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 79e59d5460 add some safe goroutines
WIP
2020-10-10 00:23:01 +11:00
CI a9049b4a82 stop using snapshots 2020-10-10 00:23:01 +11:00
Jesse Duffield 485f6d5386 support configurable config 2020-10-10 00:23:01 +11:00
Jesse Duffield 37bb89dac3 type i18n 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
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 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 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 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 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 97af7e677b support bare repositories 2020-09-29 17:42:07 +10:00
Jesse Duffield da8eac5538 better interface 2020-09-27 09:49:30 +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
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
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 afd669194a use clipboard package to handle clipboard stuff 2020-08-26 07:53:43 +10: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 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 ade54b38c1 cleanup 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 12bf851c7d faster patch manager 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 8da93fd762 add description field to ListItem interface 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 59f5f5c1af refactor 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 2d90e1e8ee commit files kind of generalised 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 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 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 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 bea2ae5ff5 stop pulling in general 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 23299f88e9 simplify patch modifier interface 2020-08-09 15:42:20 +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
Jesse Duffield 7d5fe4b66c better logic for staging a renamed file 2020-07-19 14:11:32 +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
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
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
Jesse Duffield 304607ae5d support configurable merge args 2020-04-20 18:40:49 +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 2974a57943 support copying stuff to clipboard 2020-04-15 10:44:56 +00: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 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 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 e9051355a1 fix test 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 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 198d237679 more centralised handling of 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 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 32d3e497c3 fix tests 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 f80d15062b use reflog undo history pointer 2020-03-25 09:39:04 +11:00
Jesse Duffield 3d3e0be7bd more compatible commands 2020-03-23 22:33:17 +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 1be0ff8da7 better upstream tracking and allow renaming a branch 2020-03-18 21:29:06 +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 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
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 02c497fad6 show file list when diffing commits 2020-02-25 21:38:38 +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 0034cfef5c show tags in commits panel 2020-02-24 23:13:54 +11:00
Jesse Duffield 370cec098b show diff stat 2020-02-24 09:20:50 +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 71e018a3dd get whole commit SHA from rebase commits 2020-02-13 18:10:14 +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
Glenn Vriesman 9f5397a2d4 Moved function to git.go
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-06 23:19:29 +11:00
Glenn Vriesman 5f53d50492 Check cached when showing new file diffs
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-04 08:41:41 +11:00
Chris Taylor c6cb90e8ca verify that VISUAL,EDITOR,LGCC envvars are set for non-interactive commands 2020-02-02 11:29:22 +11:00
Chris Taylor 75ba2196ba perpetuate this style of dependency injection 2020-02-02 11:29:22 +11:00
Chris Taylor 4cb50b15e4 make amend more non-interactive 2020-02-02 11:29:22 +11:00
Jesse Duffield 44edb49a6e handle files that were deleted downstream but modified upstream 2020-01-29 19:07:47 +11:00
Jesse Duffield c166c57c5d make use of branch config when pushing/pulling 2020-01-29 15:19:19 +11:00
Jesse Duffield 6b77e4ee4a fix comment 2020-01-28 22:18:55 +11:00
Jesse Duffield e5534f060d use reflog timestamps rather than commit timestamps to show commit recency 2020-01-28 22:12:48 +11:00
Jesse Duffield 23bcc19180 allow fast flicking through any list panel
Up till now our approach to rendering things like file diffs, branch logs, and
commit patches, has been to run a command on the command line, wait for it to
complete, take its output as a string, and then write that string to the main
view (or secondary view e.g. when showing both staged and unstaged changes of a
file).

This has caused various issues. For once, if you are flicking through a list of
files and an untracked file is particularly large, not only will this require
lazygit to load that whole file into memory (or more accurately it's equally
large diff), it also will slow down the UI thread while loading that file, and
if the user continued down the list, the original command might eventually
resolve and replace whatever the diff is for the newly selected file.

Following what we've done in lazydocker, I've added a tasks package for when you
need something done but you want it to cancel as soon as something newer comes
up. Given this typically involves running a command to display to a view, I've
added a viewBufferManagerMap struct to the Gui struct which allows you to define
these tasks on a per-view basis.

viewBufferManagers can run files and directly write the output to their view,
meaning we no longer need to use so much memory.

In the tasks package there is a helper method called NewCmdTask which takes a
command, an initial amount of lines to read, and then runs that command, reads
that number of lines, and allows for a readLines channel to tell it to read more
lines. We read more lines when we scroll or resize the window.

There is an adapter for the tasks package in a file called tasks_adapter which
wraps the functions from the tasks package in gui-specific stuff like clearing
the main view before starting the next task that wants to write to the main
view.

I've removed some small features as part of this work, namely the little headers
that were at the top of the main view for some situations. For example, we no
longer show the upstream of a selected branch. I want to re-introduce this in
the future, but I didn't want to make this tasks system too complicated, and in
order to facilitate a header section in the main view we'd need to have a task
that gets the upstream for the current branch, writes it to the header, then
tells another task to write the branch log to the main view, but without
clearing inbetween. So it would get messy. I'm thinking instead of having a
separate 'header' view atop the main view to render that kind of thing (which
can happen in another PR)

I've also simplified the 'git show' to just call 'git show' and not do anything
fancy when it comes to merge commits.

I considered using this tasks approach whenever we write to a view. The only
thing is that the renderString method currently resets the origin of a view and
I don't want to lose that. So I've left some in there that I consider harmless,
but we should probably be just using tasks now for all rendering, even if it's
just strings we can instantly make.
2020-01-12 11:17:20 +11:00
Jesse Duffield 282f08df36 lazyload commits 2020-01-12 10:10:56 +11:00
Jesse Duffield 9b32e99eb8 add reflog tab in commits panel 2020-01-09 22:36:07 +11:00
Jamie Brynes aea4661be5 escape editor path 2020-01-08 22:24:36 +11:00
Jesse Duffield 09aabce3cd allow commits to be checked out 2020-01-07 20:43:01 +11:00
Jesse Duffield eb2bfd3848 allow hard resetting to upstream branch 2020-01-07 20:26:01 +11:00
Jamie Brynes 5e45ae1584 fix applying patch on Windows machine
This bug was caused how the timestamp was formatted for the patch file.

On Windows machines, ":" is an invalid character for a filename, but the
`stampNano` format for time contains ":".

This fix adjusts the time format to be the `stampNano` format with "."
subsituted for ":".
2020-01-05 20:01:20 +00:00
Jesse Duffield 3f4613feb0 allow fetching remotes with 'f' 2019-12-07 16:23:04 +11:00
Jesse Duffield 339e1b5dcf lenient sorting of tags on startup 2019-11-26 21:39:40 +11:00
Jesse Duffield 7113ed73d4 support older versions of git when getting remote branches 2019-11-26 21:36:07 +11:00
Jesse Duffield 3dd1daacdc unescape another string 2019-11-21 22:17:18 +11:00
Jesse Duffield e18e81f5eb don't pass single commands directly to RunCommand (or equivalent function)
when it contains percentages.

This is a really strange one. It's a linting warning in my editor
and it doesn't stop me from compiling, but it breaks `go test`.

A basic file to reproduce what I'm talking about:

package main

import "fmt"

func main() {
	notSprintf("test %s") // compiler complains here thinking %s needs a corresponding argument
}

func notSprintf(formatStr string, formatArgs ...interface{}) string {
	if formatArgs != nil {
		return formatStr
	}
	return fmt.Sprintf(formatStr, formatArgs...)
}
2019-11-21 22:07:14 +11:00
Jesse Duffield 67a446234c fix specs 2019-11-21 22:07:14 +11:00
Jesse Duffield f905b27b00 couple of things to clean up after rebasing onto master 2019-11-21 22:07:14 +11:00
Jesse Duffield e36ee0b4f1 give RunCommand the same input signature as fmt.Sprintf 2019-11-21 22:07:14 +11:00
Jesse Duffield 3c13229145 add tags panel 2019-11-21 22:07:14 +11:00
Jesse Duffield cea24c2cf9 allow editing remotes 2019-11-21 22:07:14 +11:00
Jesse Duffield 07cbae4019 support setting upstream 2019-11-21 22:07:14 +11:00
Jesse Duffield b42202ea1c better fast forward 2019-11-21 22:07:14 +11:00
Jesse Duffield a9cd647075 support deleting remote branches 2019-11-21 22:07:14 +11:00
Jesse Duffield 2afbd7ba7f support merging remote branches into checked out branch 2019-11-21 22:07:14 +11:00
Jesse Duffield 55ff0c0dee support detached heads when showing the selected branch 2019-11-21 22:07:14 +11:00
Jesse Duffield 6b7aaeca45 support adding/removing remotes 2019-11-21 22:07:14 +11:00
Jesse Duffield 1f3e1720a3 split RemoteBranch out from Branch 2019-11-21 22:07:14 +11:00
Jesse Duffield b7f2d0366b get branches with git for-each-ref 2019-11-21 22:07:14 +11:00
Jesse Duffield b5385f2560 remove redundant logging 2019-11-21 22:07:14 +11:00
Jesse Duffield 325408d0e3 get remote branches when getting remotes 2019-11-21 22:07:14 +11:00
Jesse Duffield eeb667954f trying to use gogit with branches from remotes 2019-11-21 22:07:14 +11:00
Jesse Duffield 092f27495a add remote model 2019-11-21 22:07:14 +11:00
Jesse Duffield 3b1d705473 show upstream branch for branch 2019-11-13 22:25:42 +11:00
Jesse Duffield f43ba728e3 prompt to set upstream when pulling on untracked branch
prompt to set upstream when pulling on untracked branch
2019-11-13 21:36:16 +11:00
Jesse Duffield 12b84307ac specify upstream when pushing a branch for the first time 2019-11-11 23:30:30 +11:00
Jesse Duffield cd17b46b55 reset patch builder when we've escaped from the building phase and nothing has been added 2019-11-10 16:18:25 +11:00
Jesse Duffield d0d92c7697 remove old add patch keybinding 2019-11-10 15:01:40 +11:00
Jesse Duffield 2f37c0caaf fix tests 2019-11-05 19:22:01 +11:00
Jesse Duffield 86a39e3aea only test with non-original header 2019-11-05 19:22:01 +11:00
Jesse Duffield 72fe770974 better interface for ApplyPatch function 2019-11-05 19:22:01 +11:00
Jesse Duffield db8c398fa3 strip whitespace when there is nothing else 2019-11-05 19:22:01 +11:00
Jesse Duffield 861bcc38be fix ambiguous condition 2019-11-05 19:22:01 +11:00
Jesse Duffield cd3874ffb7 don't let patch manager ever be nil 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 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 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 820f3d5cbb support split view in staging panel and staging ranges 2019-11-05 19:22:01 +11:00
mjarkk 02fef3136f Added light theme option to the settings 2019-10-20 12:32:57 +11: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 975a5315b0 Simplified code a bit 2019-07-27 10:52:06 +10:00
haowei e1f5601d4b fix typo 2019-07-14 14:24:59 +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 c61bfbdd4c Support opening lazygit in a submodule 2019-05-12 17:59:49 +10:00
Jesse Duffield 5a0d0bb299 support resetting to a commit in either soft, hard, or mixed mode 2019-05-06 22:44:38 +10:00
Suhas Karanth e09aac6450 Improve directory check for .git
Return error if the .git exists but is not a directory. This provides a
slightly better failure message for git repo with submodules in case
the '.git' is a file which provides the reference to the parent's .git
folder with the submodule inside.
2019-05-06 21:37:42 +10:00
Jesse Duffield 0d3a193ab5 Add 'w' keybinding in files panel to commit as a WIP
If your git.skipHookPrefix is set to, say, WIP, in your config, then
hitting 'w' in the files panel will bring up the commit message panel
with 'WIP' pre-filled, so you just need to hit enter to confirm
(or add some more to the message) in order to commit your changes
with the --no-verify flag, meaning the pre-commit hook will be skipped
2019-04-13 14:38:17 +10:00
Jesse Duffield ab9fa291a8 Add skipHookPrefix to config
allows a user to specify a commit message prefix that will tell lazygit to skip
the pre-commit hook. This defaults to WIP. Setting it to the empty string will
disable the feature.

So if my message goes 'WIP: do the thing' then the pre-commit hook will not run
2019-04-13 14:38:17 +10:00
Peter Lundberg fc3a57b5e2 Change expected sha for DiscardOldFileChanges 2019-04-10 17:17:31 +10:00
Peter Lundberg 7ff07e1454 Always include atleast 2 commits when doing squash and fixup 2019-04-10 17:17:31 +10:00
Jesse Duffield 55538a3695 support custom commands 2019-04-07 17:15:01 +10:00
Jesse Duffield 60e33f5d8c Allow for creating fixup! commits 2019-04-07 13:13:40 +10:00
skanehira f34be1896a fixed some #397 2019-04-06 13:02:20 +11:00
skanehira c350cdba43 add feature of display diff between specific commits #397 2019-04-06 13:02:20 +11:00
Jesse Duffield acfc961909 move soft reset keybinding into reset options 2019-03-23 13:26:17 +11:00
Jesse Duffield f502f75e1f add more options for resetting files in the working tree 2019-03-23 13:26:17 +11:00
Jesse Duffield ff97ef7b94 support discarding unstaged changes 2019-03-23 13:26:17 +11:00
Kristijan Husak 0d208b7957 Update bitbucket pull request url. 2019-03-16 11:58:26 +11:00
Jesse Duffield f5c8aac97d add two more tests 2019-03-16 10:20:27 +11:00
Jesse Duffield 466fc4227e fix tests 2019-03-16 10:20:27 +11:00
Jesse Duffield c034c88be4 display test name when running tests 2019-03-16 10:20:27 +11:00
Jesse Duffield 72830efc45 add some tests 2019-03-16 10:20:27 +11:00
Jesse Duffield c98eddc185 appease golangci 2019-03-16 10:20:27 +11:00
Jesse Duffield 3f567c952c i18n for error message about a feature being disabled for GPG users 2019-03-16 10:20:27 +11:00
Jesse Duffield 4f7f6a073c allow user to discard old file changes for a given commit 2019-03-16 10:20:27 +11:00
Jesse Duffield 0e008cc15f allow user to checkout old files 2019-03-16 10:20:27 +11:00
Jesse Duffield 1ad9c6faac minor cleanup 2019-03-16 10:20:27 +11:00
skanehira 06fe726ee7 Add feature of display committed file list #383 2019-03-16 10:20:27 +11:00
Jesse Duffield 0079015102 distinguish between inline and non-inline merge conflicts 2019-03-03 15:58:01 +11:00
Jesse Duffield 7a2176f479 acknowledge 'DU' statuses as being merge conflicts 2019-03-03 15:48:16 +11:00
Jesse Duffield 8925b161a7 windows support for skipping the editor 2019-03-03 12:44:10 +11:00
Jesse Duffield 273678f081 fix issue where you couldn't rearrange commits while rebasing onto a branch 2019-03-02 21:31:48 +11:00
Jesse Duffield 0c886eddfb Revert "remove old rebase code now that we're only ever interactively rebasing"
This reverts commit 1a19b1412d.
2019-03-02 20:00:26 +11:00
Jesse Duffield 1337f6e76a appease golangci 2019-03-02 17:45:53 +11:00
Jesse Duffield 4de31da4be fix up tests
This fixes up some git and oscommand tests, and pulls some tests into commit_list_builder_test.go

I've also made the NewDummyBlah functions public so that I didn't need to duplicate them across packages
I've also given OSCommand a SetCommand() method for setting the command on the struct
I've also created a file utils.go in the test package for creating convient 'CommandSwapper's, which
basically enable you to assert a sequence of commands on the command line, and swap each one out for
a different one to actually be executed
2019-03-02 13:39:09 +11:00
Jesse Duffield Duffield 23c51ba708 cleanup 2019-02-24 18:34:18 +11:00
Jesse Duffield Duffield f4938deaae change type of cherryPickedCommits from []string to []*Commit 2019-02-24 17:34:19 +11:00
Jesse Duffield Duffield a8858cbd12 support cherry picking commits 2019-02-24 13:51:52 +11:00
Jesse Duffield Duffield 1a19b1412d remove old rebase code now that we're only ever interactively rebasing 2019-02-24 11:03:14 +11:00
Jesse Duffield Duffield 95d451e59a Make it easier to run sync/async commands, switch to interactive rebase when rebasing on branches 2019-02-24 10:58:15 +11:00
Jesse Duffield f6b3a9b184 rearranging todo items while interactively rebasing 2019-02-24 09:42:34 +11:00
Jesse Duffield cdc50e8557 more support for files with spaces 2019-02-24 09:42:34 +11:00
Jesse Duffield 0173fdb9df support file renames 2019-02-24 09:42:32 +11:00
Jesse Duffield 0228e25084 work towards more interactive rebase options 2019-02-19 23:36:36 +11:00
Jesse Duffield 935f774834 don't autostash when editing 2019-02-19 09:34:24 +11:00
Jesse Duffield dcc7855fd0 pull commit list builder functions into their own builder struct 2019-02-19 09:18:30 +11:00
Jesse Duffield a8e22ed82f show interactive rebase commits that are yet to go 2019-02-19 09:03:29 +11:00
Jesse Duffield d44638130c add various interactive rebase commands 2019-02-18 23:27:54 +11:00
Jesse Duffield 76a27f417f rename any commit 2019-02-18 21:29:43 +11:00
Jesse Duffield e011e9bc42 more work on rebasing feature 2019-02-16 21:01:17 +11:00
Jesse Duffield ad93b4c863 consider whether the view has focus when rendering the contents of a view 2019-02-16 15:17:44 +11:00
Jesse Duffield d967f65329 fix git tests 2019-02-16 11:24:47 +11:00
Jesse Duffield 6430ab6ac9 Merge branch 'master' into feature/rebasing 2019-02-11 22:46:27 +11:00
Jesse Duffield cfe3605e6b use go-errors package to display stacktrace of errors that cause panics 2019-02-11 22:39:17 +11:00
Jesse Duffield 3d343e9b57 Merge branch 'master' into feature/rebasing 2019-02-11 21:02:53 +11:00
KimMachineGune 3e24069722 pkg: Fix typo 2019-01-16 18:06:11 +11:00
Jesse Duffield 0afffd03ca remove comment 2018-12-19 21:46:48 +11:00
mjarkk 800b40ecc4 Translated credentials error with git push/pull/fetch 2018-12-19 10:06:58 +01:00
Jesse Duffield 7835fce708 fix tests 2018-12-18 22:40:36 +11:00
Jesse Duffield 20a94447d7 explicitly return newlines to our live command stdin 2018-12-18 22:23:17 +11:00
Jesse Duffield c35255b7a9 set stderr ourselves so that we only read the error output if there is any 2018-12-18 21:25:49 +11:00
mjarkk f5f726e9c4 A try to hide the password from the error output 2018-12-17 08:58:09 +01:00
Jesse Duffield 4886b8350e always hide rather than delete the credentials view, and don't log on error in case there is a user password in the error 2018-12-16 17:28:04 +11:00
mjarkk af26b5f3e0 Tried to fix circleci 2018-12-14 13:45:43 +01:00
mjarkk 70cd6700e7 Tried to fix circleci 2018-12-14 13:43:13 +01:00
mjarkk d11f8989d9 Merge branch 'https-ask-for-username-password' of https://github.com/mjarkk/lazygit into https-ask-for-username-password 2018-12-14 13:40:40 +01:00
mjarkk 0fca27d022 Tried to fix circleci 2018-12-14 13:40:29 +01:00
Mark Kopenga 255319e597
Merge branch 'master' into https-ask-for-username-password 2018-12-14 11:13:29 +01:00
mjarkk 5d038dfd33 Removed the wired error handling 2018-12-12 22:11:31 +01:00
mjarkk 0577d3b97f Removed the username / password savety check
This check is not realy needed because the change that it will show up a second time is so low that this is more work to check than the change it actualy might happen
2018-12-12 21:08:53 +01:00
Jesse Duffield a26c15dafa some fixes for issues around the credentials panel 2018-12-12 22:34:20 +11:00
Jesse Duffield 9489a94473 Make merge panel its own panel 2018-12-11 22:02:12 +11:00
Jesse Duffield e0ff46fe53 more work on rebasing including visual indicators 2018-12-11 09:39:54 +11:00
Glenn Vriesman 7a7e885773 Added rebase support commands 2018-12-11 09:39:54 +11:00
Glenn Vriesman 670f0e37c7 Added rebase functions 2018-12-11 09:39:54 +11:00
Glenn Vriesman 822dc5dada Moved push-pullables status to the end 2018-12-11 09:38:33 +11:00
mjarkk f14effe5f5 Worked and fixed a view comments 2018-12-09 13:04:19 +01:00
Mark Kopenga 19a6a32625
Merge branch 'master' into https-ask-for-username-password 2018-12-08 16:41:39 +01:00
Jesse Duffield ff856b7630 fetching branches without checking out 2018-12-08 11:51:47 +11:00
Jesse Duffield 99a8b1ae8b making a start on unidirectional data binding to fix these UI bugs 2018-12-08 11:51:47 +11:00
Mark Kopenga 1b6d34e76a
Merge branch 'master' into https-ask-for-username-password 2018-12-06 08:31:12 +01:00
Jesse Duffield 3b51d7cd00 clean as well as reset (I'm hoping this is a good design decision) 2018-12-05 20:06:47 +11:00
Jesse Duffield 66512ca253 use porcelain git rather than go-git for reset --hard HEAD because go-git takes over 5 seconds 2018-12-05 19:49:07 +11:00
Jesse Duffield c0f9795910 staging lines and hunks 2018-12-05 19:33:46 +11:00
Jesse Duffield 658e5a9faf initial support for staging individual lines 2018-12-04 22:11:48 +11:00
mjarkk 2edd2b74ff Removed a lot of useless code 2018-12-02 14:58:18 +01:00
BlakeMScurr 181f91d2ef Add full stops to new comments. 2018-11-30 13:47:14 +13:00
BlakeMScurr 643cdd3461 Add simple comments to uncommented functions. 2018-11-30 11:04:08 +13:00
BlakeMScurr 5c70d2724b Fix function comments with CodeLingo. 2018-11-28 15:31:22 +13:00
mjarkk 9da1382e09 Added credentials popup 2018-11-25 13:15:36 +01:00
Mark Kopenga b0eaf507a5
Merge branch 'master' into https-ask-for-username-password 2018-11-14 13:40:17 +01:00
mjarkk 448d9caf1b Fixed typo 2018-11-14 11:40:32 +01:00
Jesse Duffield 0eb1e4a86b change how we build our list of branches to support detached heads 2018-11-14 21:19:12 +11:00
mjarkk 0c4c00c1bf Removed useless channel read 2018-11-14 11:14:31 +01:00
Jesse Duffield a5f483fae9 refactor obtaining current branch name 2018-11-14 19:08:42 +11:00
mjarkk 18a1070c2c Trying to fix circleci 2018-11-10 18:24:37 +01:00
mjarkk 9fafd7ebc1 Fixed case that a commit message will break git push 2018-11-10 18:10:53 +01:00
mjarkk 80c6e0a8c4 Fixed pushing forever 2018-11-10 17:02:39 +01:00
mjarkk 834e42897d Switched back to github.com/mgutz/str instaid of a copy of ToArgv 2018-11-10 08:57:02 +01:00
mjarkk 500267417b Removed some duplicated code 2018-11-10 08:46:42 +01:00
mjarkk 18bcc0df4d Fixed no error text on windows
when executing a command live on windows it detects errors but did just show a empty string
2018-11-10 08:43:02 +01:00
mjarkk 5ae0e75e5e Switched to channels instaid of a mutex 2018-11-10 08:39:09 +01:00
mjarkk 1fd8cadd9e Replaced regex with trim 2018-11-10 08:14:35 +01:00
mjarkk 9c8b241292 Removed some useless comments 2018-11-06 20:37:59 +01:00
mjarkk 7c4d360645 Better error for code 128 2018-11-06 20:25:11 +01:00
mjarkk ad77ac639e Working new lines in live pty output 2018-11-06 20:24:10 +01:00
mjarkk cf1e9f79b1 hopefully fixed the test now 2018-11-03 09:36:38 +01:00
mjarkk 8469239d84 Fixed test 2018-11-03 09:12:45 +01:00
mjarkk 5470bb4121 Added username password detect to git pull 2018-11-02 09:54:54 +01:00
mjarkk 0e53a26d6f Maybe fixed the test this time 2018-11-01 07:06:34 +01:00
mjarkk 3938138ebc Hopefully fixed circleci 2018-10-31 19:25:52 +01:00
mjarkk 05f0e5120a Fixed one text 2018-10-31 17:55:02 +01:00
mjarkk 5532289086 Fixed some tests 2018-10-31 17:36:20 +01:00
mjarkk 78b2bc4f60 Made a better way of test pushing 2018-10-31 16:23:58 +01:00
mjarkk 9585f49490 Made error handling better 2018-10-29 08:23:56 +01:00
mjarkk 372b333662 Added copy note at top of string-to-args.go 2018-10-27 17:08:25 +02:00
mjarkk 18f09a14e6 Removed package github.com/mgutz/str for better code coverage 2018-10-27 17:06:33 +02:00
mjarkk ed564adb4a Removed github.com/ionrock/procs for better code coverage 2018-10-27 16:57:34 +02:00
mjarkk 9163110640 Removed error check for regex
Regexp only returns an error when regex string is in-corret
2018-10-27 15:52:12 +02:00
mjarkk 6c1c110ce0 Made tests pass
Git constandly exits with error code 1 for some reason it might be because of the wrong username and password but i don't think error 1 is for wrong credentials
2018-10-27 15:32:12 +02:00
mjarkk 1df1053947 Fixed test 2018-10-27 15:01:16 +02:00
mjarkk 87d1b9a547 Fixed circleci build 2018-10-27 14:56:15 +02:00
mjarkk 959d6fa2ca Made it possible to build for windows again 2018-10-27 14:37:31 +02:00
mjarkk e47c597b3a Made it possible to build again for windows 2018-10-27 14:35:07 +02:00
Mark Kopenga 1fedda6a75
Merge branch 'master' into https-ask-for-username-password 2018-10-23 13:52:50 +02:00
mjarkk ac03665df3 Handled some errors 2018-10-20 19:44:56 +02:00
mjarkk 12425f0aa7 First good success 2018-10-20 17:37:55 +02:00
Kristijan Husak 990dc8c4ea Add separate open command for links and check if branch exists on remote before opening pull request link. 2018-10-20 11:58:08 +02:00
mjarkk 4451cbc50b handled golangcibot 2018-10-17 21:14:24 +02:00
mjarkk 01fa106de3 Added files to commit pannelsidjfjlisdjfilisldjfiljisldjilfjisdjilfjlsidMoved some code around 2018-10-17 21:12:33 +02:00
mjarkk 9fc4262887 small code addition 2018-10-17 20:41:22 +02:00
mjarkk cecd5733a8 Basic file for getting the fix working 2018-10-17 20:38:13 +02:00
Kristijan Husak c69fce2e9d Remove unnecessary nil error in NewPullRequest. 2018-10-15 11:00:19 +02:00
Kristijan Husak df0e3e52fe Add option to create pull request form branches panel. 2018-10-13 22:54:51 +02:00
Kristijan Husak 4287f8ae90 Fix tests and add test scenarios for amend. 2018-10-08 22:19:42 +02:00
Kristijan Husak 190309e5c1 Check if there is any commit to amend and use 'A' instead of 'M' as shortcut. 2018-10-08 21:19:45 +02:00
Jesse Duffield ac65586bd5
Merge branch 'master' into feature/commit-amend 2018-10-07 21:08:46 +11:00
Kristijan Husak 5f7ac97a39 Refresh side panels and use uppercase HEAD in all git commands that requires it. 2018-10-06 09:53:54 +02:00
Jesse Duffield 2be613679e more test coverage 2018-10-05 09:11:19 +10:00
Kristijan Husak b6b21bc98e Merge branch 'master' of git://github.com/jesseduffield/lazygit into feature/commit-amend 2018-09-25 21:17:53 +02:00
Jesse Duffield eb69d98f99 add test for CurrentBranchName 2018-09-25 20:31:19 +10:00
Jesse Duffield fb9596a3ff add test for getMergeBase 2018-09-25 20:25:04 +10:00
Jesse Duffield 0d33a746ba Merge branch 'feature/informative-commit-colors' of https://github.com/jesseduffield/lazygit into feature/informative-commit-colors 2018-09-25 20:11:36 +10:00
Jesse Duffield f3fc98a3d0 support git flow when colouring commits 2018-09-25 20:11:33 +10:00
Jesse Duffield 17d7bcdeaf
Merge branch 'master' into feature/informative-commit-colors 2018-09-25 20:10:12 +10:00
Jesse Duffield 7164f37266
Merge branch 'master' into feature/commit-amend 2018-09-25 19:05:24 +10:00
Jesse Duffield e9245cd53b
Merge branch 'master' into add-tests-part-7 2018-09-25 19:03:29 +10:00
Jesse Duffield 70ee4faf15 add removeAll to git 2018-09-21 09:23:00 +10:00
Anthony HAMON 360b7c1def commands/git : refactor test to Diff, refactor function 2018-09-20 09:11:47 +02:00
Anthony HAMON bdeb78c9a0 commands/git : returns an error instead of panicing 2018-09-20 09:09:37 +02:00
Anthony HAMON 9481920101 commands/git : add test to GetLog 2018-09-20 09:09:37 +02:00
Jesse Duffield a2b3cd0823 add removeAll to git 2018-09-20 09:48:56 +10:00
Jesse Duffield 8fac19c175 Merge branch 'master' into feature/informative-commit-colors 2018-09-20 09:41:29 +10:00
Jesse Duffield 64f0eeb42e fix specs 2018-09-19 19:23:31 +10:00
Jesse Duffield fcaf4e339c fix specs 2018-09-19 19:16:55 +10:00
Jesse Duffield 99a6439641
Merge branch 'master' into hotfix/cursor-positioning 2018-09-19 18:42:25 +10:00
Jesse Duffield e95b2e5f0b update specs 2018-09-19 18:31:54 +10:00
Jesse Duffield c789bba673 color merged and unmerged commits differently 2018-09-18 21:45:35 +10:00
Anthony HAMON 60cf549a32 commands/git : reverse the logic 2018-09-18 09:23:41 +02:00
Anthony HAMON 6f0b32f95e commands/git : add GetCommits tests refactor
* switch GetCommitsToPush scope to private
* return a map instead of slice for look up
* remove useless includesString function
2018-09-17 21:19:17 +02:00
Jesse Duffield bd04ecff69 Merge branch 'master' into hotfix/cursor-positioning 2018-09-17 21:03:29 +10:00
Jesse Duffield c00c834b35 standardise rendering of lists in panels 2018-09-17 21:02:30 +10:00
Anthony HAMON 9713a15167 commands/git : add test to GetBranchGraph, refactor 2018-09-16 22:12:03 +02:00
Anthony HAMON b641d6bd96 commands/git : add test to Checkout, refactor 2018-09-16 22:08:23 +02:00
Anthony HAMON 67a42f49b4 commands/git : add test to RemoveFile, refactor 2018-09-16 22:03:56 +02:00
Anthony HAMON c1b7a21631 commands/git : move tests 2018-09-16 11:11:09 +02:00
Anthony HAMON 91832f2c5e commands/git : add tests, refactor a bit 2018-09-16 11:11:09 +02:00
Kristijan Husak 61f0801bd3 Add ammend commit action. 2018-09-13 12:44:32 +02:00
Anthony HAMON c92510ceba commands/git : add tests on SquashFixupCommit and refactor 2018-09-12 22:45:52 +02:00
Anthony HAMON 65a24d70c3 commands/git : add tests on SquashPreviousTwoCommits 2018-09-12 20:43:03 +02:00
Jesse Duffield 2ce8ac5850 restore old file sorting algorithm 2018-09-12 18:24:03 +10:00
Anthony HAMON 97e0a6dc45 commands/git : remove extra space 2018-09-12 07:51:14 +02:00
Anthony HAMON 9bad0337fe commands/git : swap global/local get config 2018-09-12 07:50:49 +02:00
Anthony HAMON f03544f392 commands/git : fix test 2018-09-11 22:20:59 +02:00
Anthony HAMON 0aba49af2b commands/git : fix typo 2018-09-11 21:56:17 +02:00
Anthony HAMON ccbc5e569c commands/git : add test to Push func, refactor 2018-09-11 21:56:17 +02:00
Anthony HAMON 415aad600c commands/git : add test to Commit func, refactor 2018-09-11 21:56:17 +02:00
Anthony HAMON d23577168f commands/git : remove dependency on gocui 2018-09-11 21:56:17 +02:00
Anthony HAMON 5c204b2813 commands/git: rewrite UsingGpg, add tests 2018-09-11 21:56:17 +02:00
Sascha Andres 985196f5aa docs: add comments for new test code 2018-09-10 17:36:59 +02:00
Sascha Andres bb9698810d refactor: move fallback to platform struct
Co-authored-by: Jesse Duffield <jessedduffield@gmail.com>
2018-09-10 10:31:15 +02:00
Sascha Andres 74144e3892 fix: remove call to fmt.Println 2018-09-10 10:10:10 +02:00
Sascha Andres ba0cc20e22 feat: add test cases 2018-09-10 06:51:19 +02:00
Sascha Andres 717913e64c fix: escape quote character on Linux
Co-authored-by: Dawid Dziurla <dawidd0811@gmail.com>

Closes #269
2018-09-10 06:36:15 +02:00
Anthony HAMON 24f15742d0 commands/git : rename variable 2018-09-09 20:08:46 +02:00
Anthony HAMON 6076a75643 commands/git : fix function call 2018-09-09 10:52:34 +02:00
Anthony HAMON b46e4b4976 commands/git : add several tests, do some cleanup 2018-09-09 10:52:34 +02:00
Anthony HAMON 99eca7b000 commands/git : replace make function 2018-09-09 10:52:34 +02:00
Anthony HAMON a0faaf6893 commands/git : remove includes function 2018-09-09 10:52:34 +02:00
Anthony HAMON 56ad07ebab commands/git : rename functions 2018-09-09 10:52:34 +02:00
Anthony HAMON 1ecd74c357 commands/git : add tests for GetCommitsToPush 2018-09-09 10:52:34 +02:00
Anthony HAMON ceab9706cb commands/git : add tests for UpstreamDifferentCount 2018-09-09 10:52:34 +02:00
Anthony HAMON 1cc7e9c02a rewrite to use subtests 2018-09-09 10:52:34 +02:00
Anthony HAMON 172cd7c687 fix tests locally 2018-09-04 08:32:43 +02:00
Anthony HAMON df3e7abd68 use RunCommand 2018-09-04 08:32:40 +02:00
Anthony HAMON 8c67578063 replace fmt with errors 2018-09-04 06:21:58 +02:00
Anthony HAMON 06846ef3ae rename NewApp to Setup 2018-09-04 06:21:58 +02:00
Anthony HAMON 43ad9a81c2 merge setup in function that create a new git command 2018-09-04 06:21:58 +02:00
Anthony HAMON 9f7775df26 pkg/git : remove unused Map function 2018-09-04 06:21:58 +02:00
Anthony HAMON c1984528c8 pkg/git : add tests for SetupGit 2018-09-04 06:21:58 +02:00
Anthony HAMON 624d63d2fa pkg/git : remove panic in SetupGit method 2018-09-04 06:21:58 +02:00
Jesse Duffield 796f17eef4
Merge branch 'master' into fix/tests 2018-09-03 21:20:17 +10:00
Jesse Duffield 6fc4cb1b96
Merge branch 'master' into rename-commits-in-user-editor 2018-09-03 19:53:16 +10:00
Jesse Duffield 4ab1a1f72b Merge branch 'master' into hotfix/238-xdg-open 2018-09-03 19:33:37 +10:00
Dawid Dziurla 5c1463313d
respect localized output of rmdir 2018-09-01 17:22:49 +02:00
Daniele D'Orazio 39f065207e add simple test for PrepareCommitAmendSubProcess 2018-09-01 12:29:43 +02:00
Daniele D'Orazio 9e6a4a529a add keybinding to open user editor when renaming last commit 2018-09-01 12:14:42 +02:00
Jesse Duffield d31520261f introduce platform specific defaults 2018-09-01 14:33:01 +10:00
Jesse Duffield ad880e2d56 wrap windows start command in shell 2018-09-01 13:28:10 +10:00
Jesse Duffield 865809e625 better error handling for commands 2018-09-01 13:27:58 +10:00
Jesse Duffield 04d5a473d7 use start instead of cygstart to open files on windows 2018-09-01 12:53:51 +10:00
Jesse Duffield 3f14b764d5 update tests 2018-09-01 12:13:41 +10:00
Jesse Duffield ae0d88f855 WIP using runDirectCommand with xdg-open 2018-09-01 11:38:32 +10:00
Anthony HAMON 66e5dacf5e fix git tests 2018-08-29 12:03:32 +02:00
Anthony HAMON e3ed899b20 refactor MergeStatusFiles 2018-08-29 12:03:32 +02:00
Anthony HAMON d6b4d4b063 add tests for MergesStatusFiles 2018-08-29 12:03:32 +02:00
Anthony HAMON 45fa257128 add test for StashSave and refactor StashSave method 2018-08-29 12:03:32 +02:00
Anthony HAMON 99840d8fc4 add test for StashDo and refactor StashDo method 2018-08-29 12:03:32 +02:00
Anthony HAMON 85012dbc8f add tests for GetStatusFiles 2018-08-29 12:03:32 +02:00
Anthony HAMON 13f9073552 add test for GetStashEntryDiff 2018-08-29 12:03:32 +02:00
Anthony HAMON 49b507d2ff replace make 2018-08-29 12:03:32 +02:00
Anthony HAMON 8247fd69c9 add test for GetStashEntries 2018-08-29 12:03:32 +02:00
Anthony HAMON 983d0bd586 replace make 2018-08-29 12:03:32 +02:00
Anthony HAMON ca9ce22693 use assert in tests, rename testing method 2018-08-29 12:03:32 +02:00
Jesse Duffield 7e1e97d050 dont panic when catting directories 2018-08-28 19:12:35 +10:00
Jesse Duffield 320ccdb22a when panicking due to malformed gitconfig, show a more useful error 2018-08-28 18:01:53 +10:00
Jesse Duffield b4323c029f Merge branch 'master' into feature/add-all 2018-08-27 20:57:50 +10:00
Jesse Duffield a1c6adab59 Merge branch 'master' into feature/anonymous-reporting 2018-08-27 18:50:24 +10:00
Jesse Duffield 540edc0c35 anonymous reporting data 2018-08-26 16:53:31 +10:00
Anthony HAMON f6ab11e4ee run gofmt 2018-08-26 02:20:01 +02:00
Anthony HAMON ed2dcd9e46 add tests 2018-08-26 01:58:20 +02:00
Anthony HAMON 75e08993ea extract dependencies 2018-08-26 01:58:20 +02:00
Anthony HAMON 0b07cd19f7 switch GetOpenCommand scope to private 2018-08-26 01:58:20 +02:00
Anthony HAMON 38f11f1f4a move dummy functions, rename functions 2018-08-26 01:58:19 +02:00
Anthony HAMON f91e2b12db add tests to pkg/commands 2018-08-26 01:58:19 +02:00
Anthony HAMON 364c1ac5e7 remove useless returned variable 2018-08-26 01:58:19 +02:00
Anthony HAMON 883fcf1083 remove useless returned variable 2018-08-26 01:58:19 +02:00
Anthony HAMON a891bc90b7 simplify method 2018-08-26 01:58:19 +02:00
Anthony HAMON 7a74bc504b avoid useless allocation 2018-08-26 01:58:19 +02:00
Anthony HAMON 32f4d09e89 move platform specific code to dedicated platform files 2018-08-26 01:58:19 +02:00
Anthony HAMON a5adfaee8a remove useless returned variable 2018-08-26 01:58:19 +02:00
Jesse Duffield 60422912c8 add 'a' keybinding to toggle staged/unstaged for all files 2018-08-25 08:59:51 +10:00
Dawid Dziurla bcbeec1a56
Sirupsen -> sirupsen 2018-08-23 14:22:03 +02:00
Jesse Duffield 584d6b241c
Merge pull request #198 from antham/fix-various-errors
Fix various errors reported by goreportcard
2018-08-22 09:28:19 +10:00
Anthony HAMON 810155ef2f fix documentation and reference issues 2018-08-21 20:54:46 +02:00
Jesse Duffield 4d635cd1cd
Merge pull request #151 from alcohol/force-delete-branch
add option to force delete given branch
2018-08-21 23:45:27 +10:00
Rob Bast 8e3df6b981
add option to force delete given branch 2018-08-20 08:37:16 +02:00
Jesse Duffield 4d2346f80a popup force push confirmation panel if the local branch has diverged from the upstream branch 2018-08-19 21:28:13 +10:00
Jesse Duffield aa4d739577 fix ignore feature 2018-08-19 20:41:04 +10:00
Jesse Duffield 35884f81e9 handle filenames with spaces better 2018-08-19 20:13:29 +10:00
Jesse Duffield 60fc24eada
Merge pull request #172 from jesseduffield/hotfix/167-ambiguous-name-in-diff
167: Support File names that match Branch names
2018-08-19 14:53:14 +10:00
Jesse Duffield cd9eada0c6 add test for variety of potential git diff situations 2018-08-19 14:48:39 +10:00
Jesse Duffield 08666889f4 improve remove file logic 2018-08-18 20:14:44 +10:00
Jesse Duffield a1a828a781 support opening and editing config file 2018-08-18 14:54:05 +10:00
Jesse Duffield 03a7e32694 support filenames that match branchnames 2018-08-17 22:25:53 +10:00
Jesse Duffield aaa8558de8
Merge pull request #159 from remyabel/158_escape_backticks
#158: escapes backticks, which is a problem in shells like Bash
2018-08-17 21:11:20 +10:00
Jesse Duffield dcd3bb6bbd use platform independent command to remove a file or directory 2018-08-17 11:13:21 +10:00
Tommy Nguyen 52033b32f7 Use strings.Replace instead of regexp 2018-08-16 17:04:39 -04:00
Tommy Nguyen a7755ab184 reformat 2018-08-16 07:00:13 -04:00
Tommy Nguyen db94dde114 fix formatting 2018-08-15 23:58:44 -04:00
Tommy Nguyen ee4660af97 #158: escapes backticks, which is a problem in shells like Bash 2018-08-15 23:55:55 -04:00
Jesse Duffield ba2b6fbf1f pull errors out of package scope and store sentinel errors on the gui struct 2018-08-14 23:47:14 +10:00
Mark Kopenga dfafb98871 tried to update to latest master 2018-08-14 11:05:26 +02:00
Jesse Duffield 574b34930c support files with spaces in name 2018-08-14 18:48:08 +10:00
Jesse Duffield c476dfc1cb fix open command 2018-08-14 18:35:47 +10:00
Jesse Duffield bde6182c94 better git squash logic 2018-08-14 18:30:06 +10:00
Jesse Duffield 5f30f07ea5 Merge branch 'master' into feature/quoted-messages 2018-08-14 18:10:44 +10:00
Jesse Duffield 9ecd7908aa refactor commands to depend less on the shell 2018-08-14 17:47:33 +10:00
Andrei Miulescu 842ceec9b0
Platform should only be present once 2018-08-14 12:24:32 +10:00
Jesse Duffield 95c7df4c61 use platform-specific message quoting 2018-08-14 11:16:52 +10:00
Jesse Duffield 047892962a centralise subprocess code to gui.go 2018-08-14 08:33:40 +10:00
Jesse Duffield d4f4b46a1f check both local and global config for gpgsign 2018-08-14 08:33:27 +10:00
Jesse Duffield f549ad0f37 use git command with message in subprocess if using gpgsign 2018-08-14 07:27:59 +10:00
Jesse Duffield 9e725ae24e got this bad boy compiling again 2018-08-13 21:16:21 +10:00
Jesse Duffield 97cff65612 progress on refactor 2018-08-13 20:26:02 +10:00
Jesse Duffield e6beb5d50b no more go-git for committing (reflecting the change in master) 2018-08-12 23:29:58 +10:00
Andrei Miulescu e8eb78617c
Mid refactor change some more stuff 2018-08-12 21:04:47 +10:00
Andrei Miulescu e65ddd7b6f
Move some commands around 2018-08-12 20:22:20 +10:00
Jesse Duffield c01bc09442 WIP refactor 2018-08-12 19:50:55 +10:00
Andrei Miulescu dcd461d29f
Restrucure project in a way where it is more modular 2018-08-12 19:31:27 +10:00