1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-28 16:02:01 +03:00
Commit Graph

679 Commits

Author SHA1 Message Date
a3fdf91714 feat: allow to perform a rebase with breaking before the first commit 2023-04-15 17:26:08 +10:00
d675eb6507 Don't allow changing the type of certain rebase todos
We already show "merge" todo entries when starting an interactive rebase with
--rebase-merges outside of lazygit. Changing the type of a merge entry to "pick"
or "edit" doesn't make sense and shouldn't be allowed. Earlier in this branch we
have started to show "update-ref" entries, these can't be changed either (they
can be moved, though).

You might argue that it should be possible to change them to "drop", but in the
case of "update-ref" this doesn't make sense either, because "drop" needs a Sha
and we don't have one here. Also, you would then be able to later change it back
to "pick", so we would have to remember that this isn't allowed for this
particular drop entry; that's messy, so just disallow all editing.
2023-04-15 08:36:03 +02:00
227b0b781c Show update-ref commands in rebase todo list
This is useful when working with stacked branches, because you can now move
"pick" entries across an update-ref command and you can tell exactly which
branch the commit will end up in.

It's also useful to spot situations where the --update-refs option didn't work
as desired. For example, if you duplicate a branch and want to rebase only one
of the branches but not the other (maybe for testing); if you have
rebase.updateRefs=true in your git config, then rebasing one branch will move
the other branch along. To solve this we'll have to introduce a way to delete
the update-ref entry (maybe by hitting backspace?); this is out of scope for
this PR, so for now users will have to type "git rebase --edit-todo" into the
custom command prompt to sort this out.

We will also have to prevent users from trying to turn update-ref commands into
other commands like "pick" or "drop"; we'll do this later in this branch.
2023-04-15 08:36:03 +02:00
046b0d9daa Show warning about deprecated edit configs
We print this to the terminal after lazygit quits rather than showing it in a
panel at startup, so as to not annoy people too much. Hopefully it will still be
prominent enough this way.
2023-04-13 13:14:00 +02:00
c757063264 Better error message when trying to edit or move a non-todo commit during rebase
Previously we would have tried to do the rebase, resulting in a long and
somewhat cryptic error message from git; now we check ourselves and show a less
intimidating message.
2023-04-01 08:16:15 +02:00
38c7030b0f mention path in tooltips 2023-02-20 19:28:45 +11:00
31b8524fe6 Add tooltips for discarding 2023-02-20 19:28:45 +11:00
e1c376ef54 Merge pull request #2453 from stefanhaller/allow-rebasing-to-first-commit 2023-02-20 19:21:37 +11:00
082d342bf8 add tag tests 2023-02-20 19:01:08 +11:00
a349e886ce Allow interactive rebasing all the way down to the first commit
Pass --root instead of a sha when we want to rebase down to the initial commit.
2023-02-20 07:40:05 +01:00
dd61c49a15 Better error message for trying to squash or fixup the first commit
It's not so much the total number of commits that matters here, it's just
whether we are on the first one. (This includes the other condition.)

This allows us to get rid of the condition in rebase.go.
2023-02-20 07:40:04 +01:00
bb856ad7c6 Bump minimum required git version to 2.20
We need this because the next commit is going to make use of the "break"
interactive rebase instruction, which was added in 2.20.
2023-02-19 10:20:14 +01:00
368d6437b8 Merge pull request #2373 from phanithinks/clipboard_patch_option_2357 2023-01-31 17:02:46 +11:00
069af50f50 chore(i18n): remove unused texts 2023-01-24 21:24:46 +09:00
f6f82091bc Added copy to clipboard option to the patch options 2023-01-17 09:07:07 +05:30
af5b3be286 integrate snake game into lazygit 2022-12-30 12:18:59 +11:00
5679efe174 Merge pull request #2239 from bdach/u2f-key-prompts
close https://github.com/jesseduffield/lazygit/issues/2230
2022-12-20 21:44:29 +11:00
3a1921cab0 updated rebase confirmation message 2022-12-16 17:36:37 -06:00
1a1f042f49 Add credential prompts for U2F-backed SSH keys
The 8.2 release of OpenSSH added support for FIDO/U2F hardware
authenticators, which manifests in being able to create new types of SSH
key, named `ecdsa-sk` nad `ed25519-sk`. This is relevant to lazygit,
as those SSH keys can be used to authorise git operations over SSH, as
well as signing git commits. Actual code changes are required for
correct support, as the authentication process for these types of keys
is different than the process for types supported previously.

When an operation requiring credentials is initialised with a U2F
authenticator-backed key, the first prompt is:

	Enter PIN for ${key_type} key ${path_to_key}:

at which point the user is supposed to enter a numeric (and secret) PIN,
specific to the particular FIDO/U2F authenticator using which the SSH
keypair was generated. Upon entering the correct key, the user is
supposed to physically interact with the authenticator to confirm
presence. Sometimes this is accompanied by the following text prompt:

	Confirm user presence for key ${key_type} ${key_fingerprint}

This second prompt does not always occur and it is presumed that the
user will know to perform this step even if not prompted specifically.
At this stage some authenticator devices may also begin to blink a LED
to indicate that they're waiting for input.

To facilitate lazygit's interoperability with these types of keys, add
support for the first PIN prompt, which allows "fetch", "pull", and
"push" git operations to complete.
2022-11-30 13:34:32 +11:00
a47e72892a Merge branch 'master' into stash-untracked-changes 2022-11-01 16:08:34 -02:30
11316b7a48 feat: add rename stash 2022-10-16 09:12:42 +09:00
8c46a0110d Merge branch 'master' into stash-untracked-changes 2022-10-06 22:59:06 -02:30
74acb3e86a add integration tests for cherry picking 2022-09-16 22:15:16 -07:00
7ddb80a13e feat: add stash option to include untracked changes 2022-09-15 21:48:48 -02:30
21a4522a51 Merge branch 'master' into feat/detect-bare-repo 2022-08-15 14:00:34 +01:00
4aea005f26 Merge pull request #2098 from Ryooooooga/feature/not-a-repository-quit 2022-08-14 17:37:07 +10:00
0ff5b74d80 IgnoreOrExclude should be a menu 2022-08-11 14:23:02 +02:00
8b371ada73 feat(config): add notARepository: quit 2022-08-08 18:11:58 +09:00
a91d977f89 Merge branch 'master' into feat/detect-bare-repo 2022-08-06 14:08:59 +01:00
524bf83a4a refactor to only have one context per view 2022-08-06 13:49:11 +10:00
b9b2f58bc8 Format, bug fixes 2022-08-01 17:41:20 +01:00
2866827ca8 Apply suggestions from code review 2022-08-01 17:05:16 +01:00
5f4c29d7b5 Merge pull request #2005 from mark2185/feature/recent-repos-path
Show active branch for recent repo
2022-07-31 19:30:30 +10:00
44de380c2b Add i18n for unknown branch 2022-07-31 08:57:57 +02:00
f2880ecb46 Add empty output message and refreshing to showOutput 2022-07-31 12:04:40 +08:00
c087dca60a Merge pull request #2027 from jesseduffield/gozes-jesse
Attempt at fixing CI
2022-07-05 19:37:09 +10:00
11d766053e Allow adding a file to the .git/info/exclude file 2022-07-05 19:33:44 +10:00
f1efa02640 Ask for initial branch name 2022-06-30 13:53:58 +02:00
9591cc381a support setting the author of a commit
update copy
2022-06-09 19:12:20 +10:00
b6b1f5dc37 improve korean translation 2022-06-07 23:46:32 +09:00
d2a873cb40 improve korean translation 2022-06-07 23:36:24 +09:00
d533427173 Korean translation 2022-06-07 23:31:56 +09:00
8fd9dea641 Merge pull request #1936 from Ryooooooga/feature/tab-i18n 2022-05-18 22:24:45 +10:00
499d51ecf6 Merge pull request #1931 from mark2185/fix-non-existant-recent-repo 2022-05-18 22:22:28 +10:00
5275161a88 chore(i18n): localize panel titles 2022-05-18 20:55:42 +09:00
9693afd671 fix: fix lint error 2022-05-18 20:34:35 +09:00
1de5ca3511 Don't panic when there are no valid git repos 2022-05-17 07:28:52 +02:00
241d182da7 Make tooltip i18n-able 2022-05-15 12:16:20 +02:00
ca191159f5 Discard staged changes only 2022-05-08 14:24:28 +02:00
20db9fc939 update copy 2022-05-08 13:29:57 +10:00