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
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
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
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
d0d92c7697
remove old add patch keybinding
2019-11-10 15:01:40 +11:00
Jesse Duffield
72fe770974
better interface for ApplyPatch function
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
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
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
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
60e33f5d8c
Allow for creating fixup! commits
2019-04-07 13:13:40 +10: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
Jesse Duffield
f5c8aac97d
add two more 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
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
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
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
Jesse Duffield
20a94447d7
explicitly return newlines to our live command stdin
2018-12-18 22:23:17 +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
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
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
Jesse Duffield
a5f483fae9
refactor obtaining current branch name
2018-11-14 19:08:42 +11:00
mjarkk
5470bb4121
Added username password detect to git pull
2018-11-02 09:54:54 +01:00
Mark Kopenga
1fedda6a75
Merge branch 'master' into https-ask-for-username-password
2018-10-23 13:52:50 +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
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
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
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
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
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
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
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
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
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
Anthony HAMON
24f15742d0
commands/git : rename variable
2018-09-09 20:08:46 +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