Commit graph

34 commits

Author SHA1 Message Date
Jan De Dobbeleer 4eb1d0b1d6 fix(git): parse remote URL correctly
resolves #3641
2023-03-28 09:44:20 +02:00
Jan De Dobbeleer 19ced2699d fix(git): parse SSH URL's more reliably
resolves #3472
2023-02-09 07:44:43 +01:00
Jan De Dobbeleer 51fd45dc60 feat(git): allow to exclude repo's from status fetching 2023-01-26 19:58:31 +01:00
Jan De Dobbeleer 25b29bc5bd fix(git): clean ssh remote url correctly
resolves #3378
2023-01-20 21:41:16 +01:00
Jan De Dobbeleer 19e0efc1fc fix(git): do not process remote when empty
resolves #3377
2023-01-20 21:41:16 +01:00
Jan De Dobbeleer b8c09f92ab feat(git): add commit information
resolves #3331
2023-01-09 09:18:18 +01:00
Jan De Dobbeleer 62a1bf96da feat(git): allow adding own remote icons
resolves #3300
2023-01-06 08:14:05 +01:00
maxlandon 02c557f42e refactor(go): adapt imports for go.mod consistency 2023-01-06 07:48:14 +01:00
Jan De Dobbeleer 023546fe37 chore(go): rename module 2022-12-28 20:17:59 +01:00
Jan De Dobbeleer 60664e245a feat(git): remove stash and worktree count from template
they are now individual functions so they no longer need a switch
2022-12-28 17:14:29 +01:00
Jan De Dobbeleer 18f6db017a chore: rename environment to platform 2022-11-11 20:23:52 +01:00
Jan De Dobbeleer 040a73e0f0 feat(git): fetch remote on bare repo 2022-10-13 08:40:29 +02:00
Jan De Dobbeleer e0b28bd2c4 feat(git): disable bare repo's by default
relates to #2913
2022-10-13 08:40:29 +02:00
Jan De Dobbeleer e45cd7ea17 feat(git): display when in bare repo 2022-10-10 09:01:11 +02:00
Jan De Dobbeleer 4056729e8e feat(wsl): allow using native executable on shared drive
relates to #2097
2022-09-15 09:11:16 +02:00
Jan De Dobbeleer 3ded4c00fc feat(posh-git): parse environment variable
BREAKING CHANGE: this removes the posh-git segment. To mitigate,
rename the posh-git segment to git.

In case you had a custom template, make sure to migrate to the git
segment's template. You can now also leverage the same logic and
properties as the git segment in both the text template and/or
color templates.
2022-09-07 18:04:41 +02:00
Jan De Dobbeleer 17f75fa1ff refactor(git): no leading space on branch status 2022-09-07 18:04:41 +02:00
Jan De Dobbeleer 56a59a1b32 feat(git): add link to GitKraken 2022-09-02 10:04:22 +02:00
Jan De Dobbeleer 2a1fdffb73 fix(git): align git Dir with PWD 2022-08-31 12:06:48 +02:00
Jan De Dobbeleer 07eba99d6e feat(git): expose directory 2022-08-28 15:40:20 +02:00
Piotr Kalinowski a2533c8f5b fix(git): better cross-platform path resolution and tests
The simple filepath.IsAbs() is not enough on Windows, where the relative
path may start with a separator and should then be taken relative to the
volume name.

So, introduce resolveGitPath() helper function that will do the right
thing on both Windows and other systems. As a bonus, it returns paths
converted to slashes for ease of use with the rest of the git segment:
- Git for Windows uses only slashes.
- Slashes do work as a path separator on Windows anyway.
- Some tests in git segment still use (and rightfully so) slashes.

Add tests for resolveGitPath() on both types of systems and fix
TestEnableInWorktree using a system-dependent testing constant as a root
path.
2022-08-03 18:20:00 +02:00
Piotr Kalinowski 3895210ab3 fix(git): further fixes for submodule worktrees
filepath.Join() just concatenates paths. We have to check manually for
an absolute path and discard the first component to end up with the
correct path.

Also, fix the tests to demonstrate actual behaviour of git, not what
filepath.Join() was doing.

Additionally, note that on Windows git paths in gitdir use unix
separators, so search for `/worktrees/` instead of using system
separator, just like when processing all the other cases.
2022-08-03 18:20:00 +02:00
Jan De Dobbeleer 18e23f93a8 chore: rename platform variables 2022-08-03 18:03:04 +02:00
Jan De Dobbeleer f2ccee6df6 fix(git): support submodules woth worktrees
resolves #2514
2022-07-14 20:18:45 +02:00
Jan De Dobbeleer 37a4c3eb4e feat(git): expose repo name 2022-07-01 13:19:06 +02:00
Jan De Dobbeleer 718ce22682 feat(git): set ignore-submodules flag
resolves #2455
2022-06-30 18:13:08 +02:00
Jan De Dobbeleer dc851fcf53 feat(git): override untracked mode for all repo's
resolves #2454
2022-06-30 18:13:08 +02:00
Jan De Dobbeleer 8bcbe02510 fix(git): add untracked
resolves #2349
2022-05-30 08:59:22 +02:00
Dave Moor a9c1292d83 feat: add svn segment 2022-05-30 08:59:22 +02:00
Jan De Dobbeleer bcf7d59e83 feat(git): set untracked files mode
resolves #2117
2022-04-22 08:22:53 +02:00
L. Yeung 0c7afaa7f7 fix(git): detect upstream-gone status correctly 2022-04-14 08:38:07 +02:00
lnu 09735e7ccc feat(git): --separate-git-dir support 2022-04-11 22:37:19 +02:00
Chris Donnelly 06e08074fe fix(git): detect when upstream no longer exists
Currently the git segment does not detect when an upstream is removed
(e.g., a PR is merged and the remote branch is deleted).

This change adds functionality to detect when upstream is removed;
if the status reports "branch.upstream" but no "branch.ab", it is gone.

The UI has also been changed to reflect this third state;
it now matches posh-git's behavior, which only shows the Gone icon
if an upstream branch is set but does not report ahead/behind counts.
2022-02-04 19:14:27 +01:00
Jan De Dobbeleer 9e7abe4541 refactor: move segments to module 2022-02-03 10:44:18 +01:00
Renamed from src/segment_git_test.go (Browse further)