Remote GitLab: HTTP Basic: Akses ditolak dan Otentikasi fatal


269

Saya menggunakan mac OS tidak seperti posting ini:

Saya memiliki kata sandi yang dikonfigurasi di GitLab.

Saya memiliki kunci SSL yang dibuat SETELAH proyek dibuat di GitLab.

Ketika saya menggunakan folder yang ada untuk proyek baru dan ikuti langkah-langkah di bawah ini:

Folder yang ada

cd existing_folder
git init
git remote add origin https://gitlab.com/sobopla/Geronimod.git
git add .
git commit -m "Initial commit"
git push -u origin master

Saya diminta untuk memasukkan nama pengguna dan kata sandi GitLab saya. Setelah kata sandi dimasukkan, saya mendapatkan:

jarak jauh: HTTP Basic: Akses ditolak fatal: Otentikasi gagal untuk ' https://gitlab.com/myname/myproject '


Jawaban berikut tidak berfungsi untuk saya .. Jika masih ada orang yang menghadapi masalah ini di mac ... tautan ini mungkin membantu ... stackoverflow.com/questions/17659206/…
PALLAMOLLA SAI

Jawaban:


537

Itu terjadi setiap kali saya dipaksa untuk mengubah kata sandi Windows dan tidak ada jawaban di atas yang membantu saya.

Coba solusi di bawah ini yang berfungsi untuk saya:

  1. Buka Manajer Kredensial Windows . Ini dilakukan dalam EN-US Windows dengan menekan tombol Windows dan mengetik 'kredensial'. Dalam varian Windows lokal lain Anda perlu menggunakan istilah lokal (Lihat komentar untuk beberapa contoh).

    atau Anda dapat menggunakan jalan pintas control /name Microsoft.CredentialManagerdalam dialog run (WIN + R)

  2. Edit entri git di bawah Kredensial Windows, ganti kata sandi lama dengan yang baru.

3
Terima kasih, itu berhasil juga untuk saya dan menyelesaikan masalah. Anda memerlukan solusi ini jika Anda memiliki akun Github yang berbeda di perangkat Anda
Dany Wehbe

4
Ini bekerja untuk saya juga walaupun saya menggunakan beberapa akun gilab jadi apa yang saya lakukan saya perbarui semua akun gitlab saya dengan kata sandi yang sama dengan yang saya miliki di Credential Manger saya dan masalahnya selesai Terima kasih @ mpro
Rajan Chauhan

6
Catatan: ketikkan di sistem bahasa Anda. Rus: "Credential Manager" = "Диспетчер Учетных Данных"
Dyno Cris

2
Jawaban yang bagus Ini terutama merupakan kasus dengan akun kantor Anda di mana Anda harus mengubah kata sandi setiap saat.
geekidharsh

4
Dalam bahasa Jerman itu adalah "Anmeldeinformationsverwaltung" dan kemudian "Windows-Anmeldeinformationen".
nachtigall

169
   git config --system --unset credential.helper

lalu masukkan kata sandi baru untuk server jarak jauh Git.


22
Perhatikan bahwa pada Windows Anda harus menjalankannya sebagai Administrator, jika tidak Anda akan mendapatkan kesalahan izin
Eternal21

6
Itu tergantung di mana Anda meletakkan kredensial Anda. Jika perintah sebelumnya tidak berhasil coba juga menggunakan bendera global:git config --global--unset credential.helper
Vincent Lunat

Ini adalah jawaban yang paling relevan untuk OP karena membahas masalah ini, dan tidak melanjutkan beberapa singgung "pada Windows". Juga, sebagai catatan tambahan, Anda mungkin perlu menjalankan perintah ini seolah- sudoolah pengguna Anda tidak memiliki akses ke/etc
Ghostrydr

git config --system credential.helper manager, untuk menggunakan credential.helper lagi.
hatanooh

Jika Anda menghapus pembantu kredensial, Anda harus memberikan nama pengguna dan kata sandi setiap kali terhubung ke repositori GIT. Untuk memperbaikinya, Anda dapat mengatur helper lagi dengan menggunakan perintah berikut: git config --global credential.helper store
Tomasz Czechowski

86

Saya mendapatkan kesalahan yang sama dan saya menyelesaikannya dengan:

  1. Terapkan perintah dari cmd (jalankan sebagai administrator)

    git config --system --unset credential.helper

  2. Dan kemudian saya menghapus file gitconfig dari C: \ Program Files \ Git \ mingw64 / etc / location (Catatan: jalur ini akan berbeda di MAC seperti "/ Pengguna / nama pengguna")

  3. Setelah itu gunakan perintah git like git pullataugit push , ia meminta nama pengguna dan kata sandi saya. menerapkan nama pengguna dan kata sandi dan perintah git yang berfungsi.

Semoga ini bisa membantu Anda ...


11
Jika Anda mendapatkan kesalahan itu, Anda bisa menjalankan command prompt Anda sebagai Administrator, dan kesalahan itu hilang.
Eternal21

FYI: Pengaturan ulang konfigurasi (cmd pertama Anda) berhasil. Saya kemudian melakukan git push dan blammo! Saya pikir itu karena toko saya membutuhkan perubahan kata sandi bulanan sehingga lab git internal menjadi rusak.
yardpenalty.com

1
coba juga dengan --global git config --global --unset credential.helper
Mike

Ini menyelesaikannya untuk saya di Mac
Aditya Vikas Devarapalli

57

Bagi saya, yang berikut ini berhasil:

Jangan menggunakan kata sandi GitLab Anda, tetapi buat token akses dan gunakan itu sebagai ganti kata sandi Anda:

  1. Di GitLab, buka Pengaturan > Token Akses
  2. Buat token baru (periksa api )
  3. git klon ...
  4. Saat Anda diminta kata sandi, salin dan tempel token akses sebagai ganti kata sandi GitLab Anda

4
Bekerja untuk saya juga!
Christian Ray Leovido

42

Satu-satunya hal yang berhasil bagi saya adalah menggunakan https://username:Password@gitlab.com/user/projectgitalih-alih https://gitlab.com/user/projectgit. Lihat https://gitlab.com/gitlab-com/support-forum/issues/1654


1
Jawaban yang bagus itu berfungsi dengan baik untuk saya karena git saya pribadi, Terima kasih
Mohammad H.

Terima kasih. Meskipun bagi saya harus menggantinya dengan url repo SSL tetapi jawaban Anda membuat saya membantu. Saya telah membatalkannya.
Muzzamil

Terima kasih. Saya tidak memiliki masalah seperti itu ketika menggunakan BitBucket atau Github. Dengan GitLab saya harus membuat token akses pribadi, lalu menggunakannya di tempat asalgit remote set-url origin https://usernameHere:personalAccessTokenHere@gitlab.com/usernameHere/projectNameHere
Woppi

38

Buka Windows Credential Manager (tekan Windows Key dan ketik 'kredensial') untuk mengedit entri git di bawah Kredensial Windows. Ganti kata sandi lama dengan yang baru.

Manajer Kredensial Windows


OP ada di macOS, bukan Windows.
Matthieu Brucher

Ini tidak akan membantu OP, tetapi berfungsi seperti pesona di kotak dev Windows saya.
Tony

terima kasih itu bekerja dengan baik
Sirwan Rahimi

28

Saya juga menghadapi masalah yang sama. Alasan untuk masalah ini adalah kesalahan otentikasi. Untuk mengatasi masalah ini, buka Control Panel -> Credential Manager -> Generic Credentials di sini temukan kredensial gitlab Anda dan edit. Pastikan kata sandi ID Anda benar atau tidak

masukkan deskripsi gambar di sini


Ini berhasil, dalam kasus saya itu karena perusahaan memaksa kami untuk mengubah kata sandi domain setiap beberapa bulan. Perubahan ini tidak memperbarui kredensial di manajer kredensial ini. Segera setelah saya perbarui kata sandi itu berfungsi.
k4yaman

21

Jika Anda menggunakan git> 2.11 dan menggunakan Kerberos untuk berinteraksi dengan Gitlab, Anda perlu mengatur konfigurasi ini di git lokal Anda untuk menghindari remote: HTTP Basic: Access deniedkesalahan.

$ git config --global http.emptyAuth true

Sumber


Kasus yang menarik, dengan Kerberos. +1
VonC

1
Saya tidak menggunakan Kerberos tetapi terima kasih atas balasan Anda.
jeancode

Kerberostidak perlu. Terima kasih! git-scm.com/docs/git-config
contributorpw

Setelah melakukan instalasi bersih Git pada Windows pagi ini. Jawaban ini mengatasi kesalahan akses ditolak untuk saya.
James

Sapi suci - Saya telah membaca semua saran lainnya dan akhirnya AKHIRNYA yang ini berhasil. Memang menggunakan Kerberos!
Bon Crowder di MathFour

20

Cukup tambahkan nama pengguna Anda sebelum domain:

https://**username**@gitlab.com/user/projectgit

Dan asisten akan menanyakan kata sandi



12

Buka command prompt sebagai administrator kemudian jalankan perintah ini:

git config --system --unset credential.helper

tidak dapat mengunci file config C: \ Program Files \ Git \ mingw64 / etc / gitconfig: Izin ditolak

1
Anda tidak menggunakan file konfigurasi, cukup buka command prompt Anda sebagai administrator dan jalankan perintah. Semoga ini bisa membantu
MD. Shafayatul Haque

12

Itu terjadi jika Anda mengubah login atau kata sandi akun layanan git Anda (GitHub atau GitLab, Bitbacket, dll). Anda perlu mengubahnya di Windows Credentials Manager juga.

Jadi, ketik " Credential Manager " (Rusia. "

masukkan deskripsi gambar di sini


Walaupun saya tidak mengubah pengguna atau kata sandi saya (ini adalah kredensial AD), ini terjadi pada saya karena pembangunan kembali server Gitlab dan solusi di atas telah memperbaiki kesalahan ini.
Michael Hafner

11

Catatan: jangan mencampur pengaturan SSL GitLab dan kunci SSH GitLab .

Jika yang Anda konfigurasikan di profil GitLab Anda adalah kunci publik SSH, maka URL HTTPS Anda tidak akan menggunakannya.

Mengenai kredensial HTTPS Anda, periksa ulang:

  • jika otentikasi dua faktor dinonaktifkan, atau
  • jika Anda memiliki karakter khusus di nama pengguna atau kata sandi Anda, atau
  • jika Anda memiliki Git credential helper: git config credential.helper.

1
- Saya memiliki ruang di nama pengguna saya karena saya mengotentikasi Gitlab melalui Github - Autentikasi dua faktor dinonaktifkan - Apa maksud Anda "Jika saya memiliki pembantu kredensial Git?
jeancode

@ joancode Maksud saya: apa yang Anda lihat ketika Anda mengetik git config credential.helper: yang bisa men -cache kredensial yang salah.
VonC

@jeancode Untuk ruang, apakah Anda persen menyandikannya? ( en.wikipedia.org/wiki/Percent-encoding#Character_data:% 20)
VonC

Saya tidak melakukan apa-apa pada spasi dalam nama, ruang tersebut berasal dari nama saya di GitHub, yang diambil oleh GitLab saat login otentikasi melalui Github.
jeancode

1
Saya mendapatkan kesalahan karena mencoba menggunakan kunci penyebaran sementara otentikasi dua faktor diaktifkan. Tampaknya Anda hanya dapat menggunakan token akses pribadi jika dua faktor diaktifkan.
Joshua Dyck

9

Ada dua cara saya mengatasi masalah ini:

  1. Saya menambahkan nama pengguna saya ke bagian depan URL jarak jauh ( https: // username @ gitRepoURL )

    • Tidak selalu solusi terbaik; tempat saya bekerja, meskipun kami perlahan bergerak menuju penggunaan GIT, kami memiliki aplikasi kami pada drive jaringan, jadi jika saya melakukan ini, hanya saya yang bisa mendorong perubahan walaupun ada orang lain yang bekerja pada fitur.
  2. Saya tidak dapat menjalankan git config --system --unset credential.helperdari GIT Bash, jadi saya harus membuka Admin Command Prompt dan menjalankannya di sana (ini mengasumsikan Anda menginstal GIT sehingga dapat dijalankan dari GIT Bash dan Command Prompt). Dari Bash, saya mendapatkan kesalahan "tidak bisa mengunci file konfigurasi".


untuk info lebih lanjut, lihat: git config -l. Coba juga di atas dengan --globalbukannya--system
Mike

9

Yah, saya menghadapi masalah yang sama setiap kali saya mengubah kata sandi login saya.

Di bawah ini adalah perintah yang harus saya jalankan untuk memperbaiki masalah ini: -

git config --global credential.helper wincred

Setelah menjalankan perintah di atas, ia bertanya lagi kepada saya tentang nama pengguna dan kata sandi saya yang diperbarui .


5

Dalam kasus saya, saya menginstal ulang ke versi terbaru git (saat ini 2.16.2). Saya tidak tahu apakah versi lama git saya sudah usang, tetapi saya membaca di halaman github bahwa ini harus dilakukan jika Anda menemukan kesalahan kloning https. Saya pikir itu adalah kesalahan kloning https karena kesalahan berfokus HTTP Basic, sementara GitLab menggunakan HTTPS. Saya mungkin salah dalam proses pemikiran ini, tetapi solusinya membantu dalam kasus saya, dan saya harap ini membantu siapa pun di masa depan!


4

GO TO C:\Users\<<USER>> AND DELETE THE .gitconfig filelalu coba perintah yang terhubung ke upstream like git clone, git pull or git push. Anda akan diminta memasukkan kembali kredensial Anda. Silakan melakukannya.


4

saya menghapus kredensial gitlab dari 'Credential Manager' di windows dan berhasil mendorong


4

Pergi ke Control Panel-> Credential Manager-> Windows Credentials pilih kredensial github atau gitlab dan modifikasi. Ini untuk windows10



2

Jika Anda mencoba masuk Gitlab dengan akun Git yang ada. Anda perlu mengatur ulang kata sandi Gitlab, untuk pertama kalinya.

  1. Langkah: Navigasikan ke pengaturan dengan mengklik ikon profil Anda (menu drop-down di sudut kanan atas).
  2. Langkah: Pergi ke pengaturan
  3. Langkah: Klik pada ikon kunci atau ikon glyphicon (kata sandi).
  4. Langkah: Masukkan kata sandi baru untuk Gitlab.

2

Jadi bagi saya masalahnya adalah saya telah membuat akun GitLab saya dengan menautkan akun GitHub saya ke sana. Ini berarti bahwa tidak ada kata sandi secara formal untuk akun karena dibuat melalui hotlink antara GitHub dan GitLab. Saya memperbaikinya dengan membuka Pengaturan GitLab -> Kata Sandi -> dan menulis kata sandi yang sama dengan akun GitHub saya.


2

Tidak ada solusi di atas yang berfungsi untuk saya dan saya tidak memiliki hak admin di laptop saya , tetapi mereka akhirnya membawa saya ke dokumen penyimpanan kredensial git tools :

Pengaturan saya Windows 10 | git versi 2.18.0.windows.1 | Klon melalui tautan HTTPS

Solusi ini berfungsi jika Anda menggunakan wincred sebagai penolong kredensial:

> git config --global credential.helper
wincred

Mengubah helper menjadi "cache" harus melakukan trik, karena itu akan meminta Anda untuk memberikan kredensial Anda lagi. Untuk mengaturnya ke cache, cukup ketik:

> git config --global credential.helper cache

Periksa pembaruan Anda aktif:

> git config --global credential.helper
cache

Anda sekarang harus dapat mengkloning / menarik / mengambil seperti sebelumnya.



1

Saya mencoba dengan URL browser untuk repositori

git clone $ (browserURL)

itu meminta nama pengguna saya dan kata sandi saya

Itu bekerja dengan baik kalau begitu


1

Ketika Windows Credential Manager meminta kredensial Anda untuk mengakses GitLab, itu adalah nama pengguna dan kata sandi yang Anda gunakan saat mengakses GitLab. EG: gunakan email dan kata sandi Anda.


1

Ketika saya memiliki masalah yang sama,

Saya memecahkannya dengan menghapus file "passwd" di

C:\Users\<USERNAME>\AppData\Local\Atlassian\SourceTree

Setelah menghapus Sourcetree akan muncul kata sandi.

Note:
OS Version : win10 
Sourcetree Version:  3.1

1

Saya percaya saya sedikit terlambat di sini. Tapi saya pikir ini akan membantu para peeps baru!

Kesalahan saya adalah: jarak jauh : HTTP Basic: Akses ditolak

remote : Anda harus menggunakan token akses pribadi dengan ruang lingkup 'read_repository' atau 'write_repository' untuk Git melalui HTTP.

jarak jauh : Anda dapat membuat satu di https://gitlab.com/profile/personal_access_tokens

fatal : Otentikasi gagal untuk ' https://gitlab.com/PROFILE_NAME/REPO_NAME.git/ '

Saya di Ubuntu tetapi ini bekerja untuk saya:

  1. Goto https://gitlab.com/profile/personal_access_tokens
  2. Buat token baru dan tandai centang untuk semua.
  3. Salin token Anda
  4. Sekarang, masuklah ke Terminal Anda dan rekatkan seperti ini.

git clone https: // oauth2: YOUR_TOKEN@gitlab.com/PROFILE_NAME/REPO_NAME.git/



0

Untuk pengguna Mac:

  1. Buka gantungan kunci dan hapus akun gitlab
  2. Pergi ke jalur proyek Anda di terminal dan cukup ketik git pull
  3. Kemudian Anda akan diminta nama pengguna dan kata sandi untuk gitlab
  4. Masukkan nama pengguna Anda yang akan Anda temukan di akun gitlab di bagian profil.
  5. Kemudian setelah itu masukkan kata sandi Anda yang diperbarui di sini.
  6. Ini dia, coba lagi untuk mendorong kode Anda, ini mungkin bisa membantu kalian.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.