diff options
author | Cyborus <cyborus@cyborus.xyz> | 2024-05-18 18:20:30 +0200 |
---|---|---|
committer | Cyborus <cyborus@cyborus.xyz> | 2024-05-18 18:20:30 +0200 |
commit | 956415b55b4c2c52977158aa9bec2bf7aa229434 (patch) | |
tree | c40a08c7ad5a8008e2542ec8254561d75d9c6b7b | |
parent | Merge pull request 'add `repo clone`' (#65) from repo-clone into main (diff) | |
download | forgejo-cli-956415b55b4c2c52977158aa9bec2bf7aa229434.tar.xz forgejo-cli-956415b55b4c2c52977158aa9bec2bf7aa229434.zip |
authenticate properly in `repo clone`
-rw-r--r-- | src/repo.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/repo.rs b/src/repo.rs index bb19908..16bcc0b 100644 --- a/src/repo.rs +++ b/src/repo.rs @@ -482,14 +482,18 @@ impl RepoCommand { .. } = *crate::special_render(); + let auth = auth_git2::GitAuthenticator::new(); + let git_config = git2::Config::open_default()?; + let mut options = git2::FetchOptions::new(); + let mut callbacks = git2::RemoteCallbacks::new(); + callbacks.credentials(auth.credentials(&git_config)); if colors { print!("{hide_cursor}"); print!(" Preparing..."); let _ = std::io::stdout().flush(); - let mut callbacks = git2::RemoteCallbacks::new(); callbacks.transfer_progress(|progress| { print!("{clear_line}\r"); if progress.received_objects() == progress.total_objects() { |