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