phil294 / GitLG

An free, interactive Git UI for VSCode
MIT License
146 stars 12 forks source link

Unable to fetch or should I be able to? #53

Open AddictArts opened 1 year ago

AddictArts commented 1 year ago

Clicking the fetch button glyph opens a dialog that has some transparency, which makes it hard to read. Also, there is no way to activate a fetch. Just the "SAVE" button appears.

Great extension and appreciated, thanks

AddictArts commented 1 year ago

It seems to not handle a way to get auth / credentials, no dialog.

Also, please consider a setting to turn that transparency off or change it. Thanks

phil294 commented 1 year ago

Hi! Can you please share a screenshot? It sounds like this doesn't work on your system the way it's meant to

AddictArts commented 1 year ago

Screenshot 2023-08-16 141607

This is all that happens. Like I said I am fairly certain it is wanting username and password. That however does not happen.

phil294 commented 1 year ago

that's a bit weird because as this command runs non-interactively, I would have assumed that when asking for password, it stops instead of hanging forever. Can you try running git fetch --all in console and see what happens?

The thing is, this very extension is merely a pretty wrapper around git's command line features and fetch is just yet another boring git command. No git command really gets any special treatment by this extension, it's only the same git input dialog component used over and over again. I wouldn't really know what else we could do apart from invoking fetch. Perhaps a graphical frontend to git config credential helper thingy 🤔

phil294 commented 1 year ago

dialog that has some transparency, which makes it hard to read

I know there's some transparency in these dialogs, but as far as I can tell, it's hardly noticeable. Especially on your screenshot, I can't even see any background shining through at all. Perhaps it's a monitor setting kind of thing. If others are also affected, I'd like to know so I can adjust the defaults.

With that said, you can already disable it completely by using the custom CSS option :-)

"git-log--graph.custom-css": ".modal-main, .context-menu-wrapper { background: rgb(17,17,17) !important; }"
AddictArts commented 1 year ago

Thanks @phil294. I should have mentioned this is WSL. That is probably part of it. Locally a person may not see the same problem.

If I use the command line to fetch, then jump to VSCode and use Git log, no problem. Git credential cache is making that work.

I wouldn't blame you if you didn't worry about this particular issue since it is not the primary way VSCode may be used albeit a supported way by Microsoft.

phil294 commented 1 year ago

okay, but what do you mean by WSL? Are you running VSCode itself in WSL? Because if not, then I don't think any wsl is involved, as this extension only interacts with git directly, not over some shell.

AddictArts commented 1 year ago

okay, but what do you mean by WSL? Are you running VSCode itself in WSL? Because if not, then I don't think any wsl is involved, as this extension only interacts with git directly, not over some shell.

What I mean is it is using the vscode remote, so any git commands are remote, not the local system or host. Yes WSL is involved since the files are there and git is executed there when you remote.

bakkandris commented 1 year ago

I have the same issue. It certanly look like the extension gets stuck when I try a command that accesses the password protected parent repository on github. However I also encounter the issue when the repository is loaded directly from my Windows system without the use of WSL.

If I click Pull and click Execute it displays "Loading..." indefinitly. image

If I execute the command git pull 'origin' 'master' in the terminal of VSCode it executes correctly.

git pull 'origin' 'master' From https://github.com/................. * branch master -> FETCH_HEAD Already up to date.

phil294 commented 10 months ago

I hadn't known that VSCode had a WSL-driven mode that affects all extensions too. Apparently everything should work fine by itself though: https://code.visualstudio.com/docs/remote/wsl There's this important paragraph though:

If you clone a Git repository using SSH and your SSH key has a passphrase, VS Code's pull and sync features may hang when running remotely. Either use an SSH key without a passphrase, clone using HTTPS, or run git push from the command line to work around the issue. – https://code.visualstudio.com/docs/remote/wsl#_git-limitations

So I guess there's your solution :-|

Other than that, I don't know what I can do to fix this. If anybody has an idea, please let me know.

And since @bakkandris faced this issue also without WSL, it may be a more generic problem. But I don't have a Windows machine at hand to test things, and I also have no idea what to do.