Jesse Duffield
081598d989
rewrite staging to support line ranges and reversing
...
Now we can stage lines by range and we can also stage reversals
meaning we can delete lines or move lines from the working tree
to the index and vice versa.
I looked at how a few different git guis achieved this to iron out
some edge cases, notably ungit and git cola. The end result is
disstinct from both those repos, but I know people care about
licensing and stuff so I'm happy to revisit this if somebody
considers it derivative.
2019-11-05 19:22:01 +11:00
Christian Muehlhaeuser
d953712377
err was assigned but never checked
2019-07-27 10:55:01 +10:00
Christian Muehlhaeuser
69ac0036e6
Swallow errors entirely, instead of assigning and ignoring them
2019-07-27 10:53:19 +10:00
haowei
e1f5601d4b
fix typo
2019-07-14 14:24:59 +10:00
Jesse Duffield
c61bfbdd4c
Support opening lazygit in a submodule
2019-05-12 17:59:49 +10:00
skanehira
f34be1896a
fixed some #397
2019-04-06 13:02:20 +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
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
6c1d2d45ef
some i18n and restricting rewording during interactive rebase
2019-02-24 09:42:35 +11:00
Jesse Duffield
0228e25084
work towards more interactive rebase options
2019-02-19 23:36:36 +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
cfe3605e6b
use go-errors package to display stacktrace of errors that cause panics
2019-02-11 22:39:17 +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
Jesse Duffield
99824c8a7b
add patch modifier struct
2018-12-04 22:11:48 +11:00
Jesse Duffield
0eb1e4a86b
change how we build our list of branches to support detached heads
2018-11-14 21:19:12 +11:00
Jesse Duffield
a5f483fae9
refactor obtaining current branch name
2018-11-14 19:08:42 +11:00
Jesse Duffield
c00c834b35
standardise rendering of lists in panels
2018-09-17 21:02:30 +10:00
Jesse Duffield
540edc0c35
anonymous reporting data
2018-08-26 16:53:31 +10:00
Dawid Dziurla
bcbeec1a56
Sirupsen -> sirupsen
2018-08-23 14:22:03 +02:00
Jesse Duffield
0687c07f50
more robust reading of reflog to get branch name
2018-08-15 09:45:24 +10:00
Jesse Duffield
922f4ed5a4
try rev-parse of git symbolic-ref returns nothing
2018-08-15 09:42:02 +10:00
Jesse Duffield
1c750fdb40
fix reflog command
2018-08-14 18:02:14 +10:00
Jesse Duffield
9ecd7908aa
refactor commands to depend less on the shell
2018-08-14 17:47:33 +10:00
Jesse Duffield
97cff65612
progress on refactor
2018-08-13 20:26:02 +10:00
Andrei Miulescu
e8eb78617c
Mid refactor change some more stuff
2018-08-12 21:04:47 +10:00
Andrei Miulescu
dcd461d29f
Restrucure project in a way where it is more modular
2018-08-12 19:31:27 +10:00