gitui
gitui copied to clipboard
bad credentials despite normal cli being fine
Describe the bug
I can push from the command line normally git push
, but pushing within gitui
always fails due to 'bad credentials'.
To Reproduce
Commit some changes in gitui
, press p
to trigger a push. It always fails.
Expected behavior Pushing should succeed as my ssh key is valid and works outside of gitui.
Screenshots If applicable, add screenshots to help explain your problem.
Context (please complete the following information):
- OS/Distro : macOS 11, arm m1
- GitUI Version: 0.11.0
- Rust version: 1.49 stable
Additional context
gitui
installed from cargo.
The same. Mac OS 10.15.4 GitUI version 0.11.0 (installed via brew)
Unfortunately I cannot reproduce the issue. Anything special about the way you push?
Thanks for a quick reply, Stephan!
Anything special about the way you push
--> nope, just pressing p once commited and ready to push.
i think the issues is in the fact gitui does git push <branch_name> instead of git push origin <branch_name>. Is there any way to make the latter the default push option?
can you share the way your remote is setup in .git/config
?
for it looks like:
[remote "origin"]
url = [email protected]:extrawurst/gitui.git
i think the issues is in the fact gitui does git push <branch_name> instead of git push origin <branch_name>. Is there any way to make the latter the default push option?
since you use the brew-version it only supports pushing to origin
right now
My remote is setup in this way:
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [remote "origin"] url = [email protected]:**/pipeline-base.git fetch = +refs/heads/:refs/remotes/origin/ [branch "develop"] remote = origin merge = refs/heads/develop [branch "release/1.12.0"] remote = origin merge = refs/heads/release/1.12.0 [branch "release/1.12.1"] remote = origin merge = refs/heads/release/1.12.1
And if i do git push <branch_name> from the cli, i get **fatal: 'test' does not appear to be a git repository fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.** --> which results in bed credentials in gitui i think. But if i do git push origin <branch_name> all works fine. Might be something with my git setup, but so far was working like a charm. Thanks
@dmytro-tolkodubov I cannot see anything obviously problematic unfortunately.
Could you run gitui -l
so that it writes to the log file and share if there is anything more telling in there?
@extrawurst did execute with -l flag, but can't find the file with with the log output :).
@extrawurst did execute with -l flag, but can't find the output where the log should have been saved to :).
https://github.com/extrawurst/gitui#diagnostics
Ah, thanks! This is what i see there:
tail $HOME/Library/Caches/gitui/gitui.log
10:48:45 [TRACE] (1) gitui::app: [src/app.rs:278] update
10:48:45 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:93] request
10:48:45 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 14046281010676946994] (type: WorkingDir, untracked: true)
10:48:45 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 6842313692465843766] (type: Stage, untracked: true)
10:48:45 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 14046281010676946994 (type: WorkingDir, untracked: true)
10:48:45 [TRACE] (5) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 6842313692465843766 (type: Stage, untracked: true)
10:48:45 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Diff
10:48:45 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
10:48:45 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
10:48:46 [TRACE] (1) gitui::app: [src/app.rs:212] event: Input(Key(KeyEvent { code: Char('c'), modifiers: CONTROL }))
you did not try to push in that session
i think i did, here is the error line (did not paste the whole log, it is a bit bigger)
10:48:35 [TRACE] (1) gitui::app: [src/app.rs:278] update
10:48:35 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:93] request
10:48:35 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 8133653752159640044] (type: WorkingDir, untracked: true)
10:48:35 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 16630248863231777639] (type: Stage, untracked: true)
10:48:35 [TRACE] (2) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 16630248863231777639 (type: Stage, untracked: true)
10:48:35 [TRACE] (5) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 8133653752159640044 (type: WorkingDir, untracked: true)
10:48:35 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Diff
10:48:35 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
10:48:35 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
10:48:39 [DEBUG] (7) asyncgit::sync::remotes: creds: '[email protected]:***/pipeline-base.git' Some("git") (SSH_KEY | SSH_MEMORY | SSH_CUSTOM)
10:48:40 [DEBUG] (7) asyncgit::sync::remotes: creds: '[email protected]:***/pipeline-base.git' Some("git") (SSH_KEY | SSH_MEMORY | SSH_CUSTOM)
10:48:40 [INFO] push progress: Some(PushProgress { state: Pushing, progress: 100 })
10:48:40 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Push
10:48:40 [ERROR] push error: git error:Bad credentials.
Ok I have no idea what's happening there. Maybe @jamesb93 can check the config and log, too.
Thanks for the great tool though!
Thanks man, the push feature is still quiet new and there are so many flavours of how this can fail, but I am sure we will find the culprit of this.
Two things for you to keep in mind: a) if you have credentials you don't want to share in a post here, the first post matters as every subscriber might receive the original version as an email. b) use ``` to annotate code/logs whatever for better readability.
Thanks! There were no creds, but some info i thought i would not publish, not something confidential :)
b) use ``` to annotate code/logs whatever for better readability.
I used that each time, but did not like the formatting, the config lines spilt, etc - hence had to stick to pure formatting.
Same issue on macOS, but Linux works fine. Using 0.11.0
installed from nixpkgs.
My config:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = [email protected]:austinbutler/home-manager.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
Log:
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:212] event: Input(Key(KeyEvent { code: Char('p'), modifiers: NONE }))
23:06:19 [TRACE] (1) asyncgit::push: [asyncgit/src/push.rs:140] request
23:06:19 [INFO] push progress: None
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:278] update
23:06:19 [INFO] push progress receiver spawned
23:06:19 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:93] request
23:06:19 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 12116648514797157301] (type: WorkingDir, untracked: true)
23:06:19 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 9610033249583839640] (type: Stage, untracked: true)
23:06:19 [TRACE] (4) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 9610033249583839640 (type: Stage, untracked: true)
23:06:19 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 12116648514797157301 (type: WorkingDir, untracked: true)
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Diff
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:278] update
23:06:19 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:93] request
23:06:19 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 6258322933600415971] (type: WorkingDir, untracked: true)
23:06:19 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 15050898553161509101] (type: Stage, untracked: true)
23:06:19 [TRACE] (4) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 15050898553161509101 (type: Stage, untracked: true)
23:06:19 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 6258322933600415971 (type: WorkingDir, untracked: true)
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Diff
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
23:06:19 [DEBUG] (7) asyncgit::sync::remotes: creds: '[email protected]:austinbutler/home-manager.git' Some("git") (SSH_KEY | SSH_MEMORY | SSH_CUSTOM | SSH_INTERACTIVE)
23:06:19 [DEBUG] (7) asyncgit::sync::remotes: creds: '[email protected]:austinbutler/home-manager.git' Some("git") (SSH_KEY | SSH_MEMORY | SSH_CUSTOM | SSH_INTERACTIVE)
23:06:19 [INFO] push progress: Some(PushProgress { state: Pushing, progress: 100 })
23:06:19 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Push
23:06:20 [ERROR] push error: git error:Bad credentials.
23:06:20 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Push
23:06:20 [TRACE] (1) gitui::app: [src/app.rs:278] update
23:06:20 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:93] request
23:06:20 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 12063500518878365465] (type: WorkingDir, untracked: true)
23:06:20 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 1608129730030349621] (type: Stage, untracked: true)
23:06:20 [TRACE] (4) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 1608129730030349621 (type: Stage, untracked: true)
23:06:20 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 12063500518878365465 (type: WorkingDir, untracked: true)
23:06:20 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Diff
23:06:20 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
23:06:20 [TRACE] (1) gitui::app: [src/app.rs:295] update_git: Status
23:06:21 [TRACE] (1) gitui::app: [src/app.rs:212] event: Input(Key(KeyEvent { code: Esc, modifiers: NONE }))
❯ git push master
fatal: 'master' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
❯ git push origin master
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 294 bytes | 294.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
To gitlab.com:austinbutler/home-manager-work.git
5e49466..5fcf4f2 master -> master
Hi, same Problem here on Windows 10 using Windows Terminal.
Can't provide a Log, because Log Folder is not documented for Windows.
[remote "origin"]
url = https://[...]
fetch = +refs/heads/*:refs/remotes/origin/*
@ser-drephs
Can't provide a Log, because Log Folder is not documented for Windows.
dirs-next docs say it is supposed to be here: {FOLDERID_LocalAppData}
keep in mind that you still need to run gitui -l
to produce logging.
would be cool if you could validate this on windows and make PR for the readme to extend the documentation for where to find the win logs
@extrawurst created PR #579 for readme.
Log:
15:22:24 [ERROR] failed loading key binding: missing field `rename_branch`
15:22:24 [TRACE] (1) gitui::app: [src\app.rs:278] update
15:22:24 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:95] request: [hash: 13786298131209757784] (type: WorkingDir, untracked: true)
15:22:24 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:95] request: [hash: 60621207339198373] (type: Stage, untracked: true)
15:22:24 [TRACE] (1) gitui::app: [src\app.rs:212] event: Input(Resize(198, 40))
15:22:25 [TRACE] (3) asyncgit::status: [asyncgit\src\status.rs:152] status fetched: 60621207339198373 (type: Stage, untracked: true)
15:22:25 [TRACE] (1) gitui::app: [src\app.rs:295] update_git: Status
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:212] event: Input(Key(KeyEvent { code: Char('p'), modifiers: NONE }))
15:22:29 [DEBUG] (1) git2::cred: executing credential helper "sh" "-c" "git credential-wincred get"
15:22:29 [DEBUG] (1) git2::cred: `sh` failed to spawn: Das System kann die angegebene Datei nicht finden. (os error 2)
15:22:29 [DEBUG] (1) git2::cred: executing credential helper "git" "credential-wincred" "get"
15:22:29 [TRACE] (1) git2::cred: [C:\Users\runneradmin\.cargo\registry\src\github.com-1ecc6299db9ec823\git2-0.13.12\src\cred.rs:403] credential helper stderr ---
15:22:29 [TRACE] (1) git2::cred: [C:\Users\runneradmin\.cargo\registry\src\github.com-1ecc6299db9ec823\git2-0.13.12\src\cred.rs:421] ignoring output line:
15:22:29 [TRACE] (1) asyncgit::push: [asyncgit\src\push.rs:140] request
15:22:29 [INFO] push progress: None
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:278] update
15:22:29 [INFO] push progress receiver spawned
15:22:29 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:89] request blocked, still pending
15:22:29 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:95] request: [hash: 10069514427976502005] (type: Stage, untracked: true)
15:22:29 [DEBUG] (7) asyncgit::sync::remotes: creds: 'https://[...]' None (USER_PASS_PLAINTEXT | DEFAULT)
15:22:29 [INFO] push progress: Some(PushProgress { state: Pushing, progress: 100 })
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:295] update_git: Push
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:278] update
15:22:29 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:89] request blocked, still pending
15:22:29 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:89] request blocked, still pending
15:22:29 [TRACE] (3) asyncgit::status: [asyncgit\src\status.rs:152] status fetched: 10069514427976502005 (type: Stage, untracked: true)
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:295] update_git: Status
15:22:29 [ERROR] push error: git error:failed to set credentials: Falscher Parameter.
; class=Os (2)
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:295] update_git: Push
15:22:29 [TRACE] (1) gitui::app: [src\app.rs:278] update
15:22:29 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:89] request blocked, still pending
15:22:29 [TRACE] (1) asyncgit::status: [asyncgit\src\status.rs:95] request: [hash: 6192809872892578921] (type: Stage, untracked: true)
15:22:30 [TRACE] (3) asyncgit::status: [asyncgit\src\status.rs:152] status fetched: 6192809872892578921 (type: Stage, untracked: true)
15:22:30 [TRACE] (1) gitui::app: [src\app.rs:295] update_git: Status
Platform: OSX 10.15.7
gitui: 0.12 at b5ef9b10f1e0e6e0c21a55d9083b4e40c1f759b8
rustc 1.50.0 (cb75ad5db 2021-02-10)
Same here. Our git repo lives behind VPN. If I try to pull/push without connecting to it from console it will yield error after some timeout.
ssh: connect to host gitlab.domain.com port 22: Operation timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
But when I am connected it fetch/push just fine from console, but gitui for some reason fails and displays two modal windows:
-
fetch failed. git error: Bad credentials.
, there'sClose [⏎]
hint on the command panel. Works just fine -
pull : done
- displayed when the first one closed, also showsClose [⏎]
hint but do not react to it.
10:38:30 [TRACE] (6) mio::poll: [/Users/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mio-0.7.9/src/poll.rs:478] registering event source with poller: token=Token(0), interests=READABLE
10:38:30 [TRACE] (1) gitui::app: [src/app.rs:294] update
10:38:30 [TRACE] (6) mio::poll: [/Users/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mio-0.7.9/src/poll.rs:478] registering event source with poller: token=Token(1), interests=READABLE
10:38:30 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 10118950357809785858] (type: WorkingDir, untracked: true)
10:38:30 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 8626102265759462768] (type: Stage, untracked: true)
10:38:31 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 8626102265759462768 (type: Stage, untracked: true)
10:38:31 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Status
10:38:31 [TRACE] (2) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 10118950357809785858 (type: WorkingDir, untracked: true)
10:38:31 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Status
10:38:31 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:90] request
10:38:31 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Diff
10:38:31 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:90] request
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Char('f'), modifiers: NONE }))
10:38:32 [TRACE] (1) asyncgit::fetch: [asyncgit/src/fetch.rs:70] request
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:294] update
10:38:32 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:90] request
10:38:32 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 11179346055135384458] (type: WorkingDir, untracked: true)
10:38:32 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 3478892476685171275] (type: Stage, untracked: true)
10:38:32 [DEBUG] (7) asyncgit::sync::remotes::push: creds: '[email protected]:corp/platform.git' Some("git") (USER_PASS_PLAINTEXT | SSH_KEY | SSH_MEMORY | SSH_CUSTOM)
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Diff
10:38:32 [DEBUG] (7) asyncgit::sync::remotes::push: creds: '[email protected]:corp/platform.git' Some("git") (USER_PASS_PLAINTEXT | SSH_KEY | SSH_MEMORY | SSH_CUSTOM)
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Fetch
10:38:32 [ERROR] fetch error: git error:Bad credentials.
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:294] update
10:38:32 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:90] request
10:38:32 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:89] request blocked, still pending
10:38:32 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:89] request blocked, still pending
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Fetch
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:294] update
10:38:32 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:90] request
10:38:32 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:89] request blocked, still pending
10:38:32 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:89] request blocked, still pending
10:38:32 [TRACE] (4) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 3478892476685171275 (type: Stage, untracked: true)
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Status
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Diff
10:38:32 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Diff
10:38:33 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 11179346055135384458 (type: WorkingDir, untracked: true)
10:38:33 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Status
10:38:34 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:35 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:35 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:35 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:35 [TRACE] (1) gitui::app: [src/app.rs:294] update
10:38:35 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:90] request
10:38:35 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 12421105405156037469] (type: WorkingDir, untracked: true)
10:38:35 [TRACE] (1) asyncgit::status: [asyncgit/src/status.rs:95] request: [hash: 8962231771842165632] (type: Stage, untracked: true)
10:38:35 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Diff
10:38:36 [TRACE] (4) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 8962231771842165632 (type: Stage, untracked: true)
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Status
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:36 [TRACE] (3) asyncgit::status: [asyncgit/src/status.rs:152] status fetched: 12421105405156037469 (type: WorkingDir, untracked: true)
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:312] update_git: Status
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:36 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
10:38:37 [TRACE] (1) gitui::app: [src/app.rs:228] event: Input(Key(KeyEvent { code: Char('c'), modifiers: CONTROL }))
Is it that you are using 2 factor authentication on github? i had the same problem and you need to generate a personal access token and enter that instead of your password
Enter that where?
We don't use 2fa, just regular ssh keys via vpn connection
is this maybe a dup of #615 ?
I have the same issue when connecting to a local git server through ssh
~/.cache/gitui/gitui.log
1:08:20 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:305] update
11:08:20 [TRACE] (6) mio::poll: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/mio-0.7.11/src/poll.rs:478] registering event source with poller: token=Token(0), interests=READABLE
11:08:20 [TRACE] (6) mio::poll: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/mio-0.7.11/src/poll.rs:478] registering event source with poller: token=Token(1), interests=READABLE
11:08:20 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 16391627308970094886] (type: WorkingDir, untracked: true)
11:08:20 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 14771127431235405847] (type: Stage, untracked: true)
11:08:20 [TRACE] (3) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 16391627308970094886 (type: WorkingDir, untracked: true)
11:08:20 [TRACE] (2) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 14771127431235405847 (type: Stage, untracked: true)
11:08:20 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:20 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:237] event: Input(Key(KeyEvent { code: Char('f'), modifiers: NONE }))
11:08:23 [TRACE] (1) asyncgit::fetch: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/fetch.rs:70] request
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:305] update
11:08:23 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 9795538405874111103] (type: WorkingDir, untracked: true)
11:08:23 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 3459803805977152553] (type: Stage, untracked: true)
11:08:23 [TRACE] (4) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 3459803805977152553 (type: Stage, untracked: true)
11:08:23 [TRACE] (2) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 9795538405874111103 (type: WorkingDir, untracked: true)
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:23 [DEBUG] (7) asyncgit::sync::remotes::push: creds: 'git.local:rust/homeweb.git' None (USERNAME)
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Fetch
11:08:23 [ERROR] fetch error: git error:Couldn't find credentials
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Fetch
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:305] update
11:08:23 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 4756056286265376941] (type: WorkingDir, untracked: true)
11:08:23 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 10548214982962411508] (type: Stage, untracked: true)
11:08:23 [TRACE] (3) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 10548214982962411508 (type: Stage, untracked: true)
11:08:23 [TRACE] (2) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 4756056286265376941 (type: WorkingDir, untracked: true)
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:23 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:25 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:305] update
11:08:25 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 14028820768351457085] (type: WorkingDir, untracked: true)
11:08:25 [TRACE] (1) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:95] request: [hash: 5226776624098862421] (type: Stage, untracked: true)
11:08:25 [TRACE] (4) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 5226776624098862421 (type: Stage, untracked: true)
11:08:25 [TRACE] (2) asyncgit::status: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/asyncgit-0.15.0/src/status.rs:152] status fetched: 14028820768351457085 (type: WorkingDir, untracked: true)
11:08:25 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:25 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:323] update_git: Status
11:08:26 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:237] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE }))
11:08:27 [TRACE] (1) gitui::app: [/home/trangar/.cargo/registry/src/github.com-1ecc6299db9ec823/gitui-0.15.0/src/app.rs:237] event: Input(Key(KeyEvent { code: Char('c'), modifiers: CONTROL }))
.git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = git.local:rust/homeweb.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
I was able to fix this bad credentials
issue by adding the following to ~/.ssh/config. User is important.
Host github
Hostname github.com
User git
IdentityFile path/to/id/file
ssh-add ~/.ssh/id_rsa
- adding key(s) to ssh-agent fixed the error for me