Kesalahan Git fatal: Otentikasi gagal

103

Saya mencoba menggunakan git untuk mendorong repositori saya ke proyek layanan tim studio visual, tetapi saya mendapatkan kesalahan:

fatal: Authentication failed for (url of team project

Saya menggunakan cmds:

git remote add origin
     https://XXXXXXX.visualstudio.com/DefaultCollection/_git/project

git push -u origin -–all

Ada ide untuk memperbaikinya?

Terima kasih!

GurdeepS
sumber
1
Bagaimana Anda mengautentikasi? Token akses pribadi? Kredensial akses alternatif?
Daniel Mann

Jawaban:

196

Saya mengalami masalah yang sama baru-baru ini (visual studio 2017 & Windows 10), dan menyelesaikannya menggunakan metode berikut:

Panel Kontrol -> Manajer Kredensial -> Kelola Kredensial Windows -> Pilih entri dari repositori git, dan Edit pengguna dan kata sandi.

Selesai.

kxiaocai.dll
sumber
1
Saya menggunakan metode ini ketika Token Akses Pribadi saya kedaluwarsa. Buka <<URL>> / _ usersSettings / token untuk membuat yang baru, lalu setel sebagai sandi di Pengelola Kredensial.
Even Mien
34

Jika Anda ingin menggunakan GIT CLI dan tidak berinteraksi dengan build di pembungkus GIT di Visual Studio, Anda perlu mengaktifkan Kredensial Otentikasi Alternatif

Bagaimana?

Open your account (VS Online account) 
-> click on your name on the top right 
-> My Profile
-> Credentials.

dan mengaturnya.


masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

CodeWizard
sumber
4
Keamanan adalah item terpisah di menu sekarang. Jika Anda mengklik profil, itu pergi ke halaman yang sangat berbeda.
Lukos
2
itu mungkin berbeda di antara versi. inilah mengapa saya menambahkan tangkapan layar
CodeWizard
1
Saya tidak harus melakukan ini. Menggunakan PAT untuk Git Bash tampaknya berfungsi dengan baik.
Josh Gust
1
Harap gunakan PAT sebagai ganti kredensial alternatif.
Edward Thomson
1
Mengaktifkan kredensial alternatif tidak disarankan: kredensial domain transit dalam teks biasa dan mungkin berakhir di log IIS Tingkat Aplikasi
Giulio Vian
28

Saya menghadapi masalah yang sama. Jendela keluaran kesalahan terlihat seperti ini: otentikasi gagal Gambar

Mengikuti langkah-langkah menyelesaikan masalah:

  1. Buka Panel Kontrol -> Manajer Kredensial -> Kredensial Windows
  2. Di bawah Kredensial Umum, pilih entri dari git & update kata sandi.

    jendela solusi

  3. Kata sandi harus sama dengan kata sandi login windows (sistem).

Anusha M Shetty
sumber
17

Opsi terbaik hari ini adalah menginstal https://github.com/Microsoft/Git-Credential-Manager-for-Windows yang mendukung VSO, GitHub dan terus meningkat setiap bulan.

Giulio Vian
sumber
2
@dotnetdev Terima jawaban ini karena ini adalah cara yang disarankan untuk menyelesaikan masalah.
Deilan
1
Ini juga tersedia untuk Mac dan Linux di github.com/Microsoft/Git-Credential-Manager-for-Mac-and-Linux - bekerja dengan sempurna untuk saya tanpa harus menambahkan "kredensial alternatif" yang kurang aman.
Breeno
1
Ini memang solusi "de facto" yang disediakan Microsoft. Solusi lain yang benar-benar berfungsi di sini akan dianggap sebagai penyesuaian.
Stephane
11

Dengan VSTS url-nya adalah, Ketika Anda menyalin git clone url dari vsts, Anda selalu mendapatkan

https: // orgname @ dev.azure.com / org / project / _git / repo

Ganti orgname @ dengan nama pengguna alternatif yang Anda gunakan untuk membuat VSTS -> profil -> Keamanan.

url git terakhir -

https: // alternateusername @ dev.azure.com / org / project / _git / repo

Max
sumber
7

Saya memiliki masalah yang sama, saya mencoba memperbarui kata sandi saya menggunakan windows credential manager, itu masih tidak memperbaiki masalah

Panel Kontrol -> Manajer Kredensial -> Kelola Kredensial Windows -> Pilih entri dari repositori git, dan Edit pengguna dan kata sandi.

Saya kemudian menghapus semua entri terkait git di pengelola kredensial dan kemudian mencoba menggunakan Git menggunakan studio visual, kali ini meminta kredensial baru

Pengembang Aplikasi Web
sumber
5

Hapus '.git / config' dan coba lagi. Perhatian ini akan mengatur ulang beberapa pengaturan git juga!

Saya sudah mencoba kredensial alternatif dan Token Akses Pribadi berkali-kali dengan kredensial yang benar dan terus memberi tahu saya "fatal: Autentikasi gagal".

Akhirnya, saya menemukan ada file bernama ".git / config" yang terletak di root Repo saya. Saya menghapus file ini dan mengetikkan kredensial saya lagi, itu berhasil.

Longfei Wu
sumber
3

Saya tiba-tiba mulai menerima kesalahan ini ketika mencoba untuk mendorong perubahan dari VS2017 ke repositori VSTS Git. Fungsi ini telah berfungsi sehari sebelumnya.

Saya memeriksa file git.log saya dan melihat pengecualian yang berbeda: -

19: 43: 57.116665 ... zureAuthority.cs: 184 jejak: Server [ValidateCredentials] mengembalikan: 'Tidak dapat tersambung ke server jarak jauh.

Saya mendownload sumber Git CredentialManager terbaru dari repo Gits Credential Manager dan men- debugnya.

Setelah diautentikasi, pengecualian berikut terjadi: -

Tidak ada koneksi yang dapat dibuat karena mesin target secara aktif menolaknya 127.0.0.1:8888

Saya kemudian menyadari bahwa saya baru saja menyiapkan Fiddler untuk bertindak sebagai proxy untuk semua layanan sesuai artikel yang menangkap-lalu lintas-dari-.net-layanan-dengan-fiddler

Setelah saya menjalankan Fiddler, saya berhasil tersambung.

Tuan Slim
sumber
3

Solusi saya sedikit berbeda dan lebih cepat :)

  1. Buka Kredensial Windows (Mulai-> Kredensial Windows) dan hapus kredensial untuk repositori Anda (dimulai dengan git: xxx)
  2. Pergi ke VSCode dan di Terminal tulis:

    config credential.helper wincred

  3. Buka Visual Studio (tanpa VSCode) dan lakukan git pull. Munculan akan muncul meminta kredensial. Masukkan kredensial Anda untuk repo

  4. Pergi ke VSCode dan lakukan git pull. Kredensial secara otomatis diambil dari penyimpanan wincred

Kredensial secara otomatis dibuat dan disimpan dalam wincredentials, jadi lain kali Anda tidak dapat dimintai kredensial. (juga Token Akses Pribadi akan disediakan dari visualstudio.com jika Anda menggunakan repo git yang dihosting DevOps).

Antonio Buonaiuto
sumber
Mulai-> Kredensial Windows bekerja seperti pesona! Terima kasih!
Highriser
2

Untuk pengguna Linux yang tidak dapat menggunakan Microsoft Credential Manager. Ini adalah satu-satunya solusi yang saya temukan selain menggunakan ssh. Anda perlu membuat kredensial dalam tampilan repositori (Lihat gambar di bawah) dapatkan kredensial git

Dan hasilnya adalah: dapatkan hasil kredensial Git

Salin kata sandi !. Azure devops tidak menyimpannya dan Anda tidak akan dapat melihatnya lagi!

NB: Mulai 2020 kredensial alternatif telah dinonaktifkan, periksa blog Microsoft

Melchia
sumber
1

Saya sudah mencoba banyak opsi, tetapi yang berhasil bagi saya adalah:

  1. Unduh Git Password Manager dari bagian Rilisnya

  2. Coba lakukan simple git fetchyang secara otomatis akan memunculkan window (bergantian dengan default windows one misalnya) dan meminta untuk memasukkan username dan password tetapi dengan cara yang lebih elegan dari pada yang standar.

Setelah memasukkan kredensial dengan benar, itu berhasil, meskipun saya mendapatkan kesalahan sebelumnya.

PS Jika Anda mendapatkan jenis kesalahan "Kredensial Salah", selalu periksa apakah nama pengguna dan sandi repositori sudah benar. Jika Anda ragu, cukup setel ulang kata sandi dan coba gunakan kata sandi yang sama di jendela pengelola Git Password.

Arsen Khachaturyan
sumber
1

Saya mengalami masalah ini dan instruksi dari teknisi di Microsoft memperbaikinya untuk saya:

  • Tutup semua contoh Visual Studio.
  • Buka Task Manager dan periksa apakah ada Layanan TFS yang sedang berjalan. Pilih masing-masing dan klik End Process Tree.
  • Jelajahi folder di bawah ini dan hapus semua konten dan folder di% LocalAppData% \ Microsoft \ Team Foundation {version} \ Cache
  • Buka Panel Kontrol -> Akun Pengguna -> Kelola Kredensial Anda -> Kredensial Windows, pilih URL VSTS untuk menghapusnya
  • Lalu pergi ke "C: \ Users \ USER NAME \ AppData \ Local \ GitCredentialManager \ tenant.cache" dan hapus
  • Buka juga "C: \ Users \ USER NAME \ AppData \ Local.IdentityService" dan hapus
Casey
sumber
0

Yang saya butuhkan hanyalah kredensial yang benar. saat menerapkan ke aplikasi web, saya harus pergi ke Deployment Center, Deployment Credentials. Dan kemudian gunakan Kredensial Aplikasi atau buat Kredensial Pengguna. Setelah ini, hapus kredensial yang di-cache di komputer lokal (windows: Control Panel \ User Accounts \ Credential Manager). jalankan "git push webapp master: master" lagi, masukkan salah satu Kredensial Penerapan. Ini berhasil untuk saya.

mahesh
sumber
0

Jika Anda menggunakan sesuatu yang lain maka windows dan atasan Anda memaksa Anda untuk menggunakan devops biru, dan Anda tidak ingin menggunakan SSH, dan Anda ingin menggunakan cara lama, lakukan hal berikut.

Anda harus mengaktifkan 'Kredensial alternatif' (saya tahu itu mengganggu) atau Anda perlu membuat token akses. Membuat token akses dalam hal ini lebih seperti kata sandi acak sementara. Jika Anda menggunakan perkakas windows, itu dilakukan untuk Anda.

Bagaimanapun, buka Securitydi menu konteks profil di sudut kanan atas.

Pengaturan keamanan

Kemudian jika bos / manajer / pria Anda yang memiliki hak admin menyukai Anda, 'Kredensial alternatif' diaktifkan. Jika tidak, terima nasib Anda dan hasilkan 'Token akses pribadi'.

Pengaturan keamanan

botenvouwer
sumber
0

2 hingga 5 menit untuk penyiapan!

  • Buat kunci SSH Anda (~ / .ssh /)

ssh-keygen -C "[email protected]"

  • Tambahkan kunci publik ke Azure DevOps Services / TFS
  • Gandakan repositori Git dengan SSH

Sumber

jnermano
sumber
0

Setelah berjuang dengan git otentikasi dan devops biru server dan mencoba jawaban lainnya tip ini di sini bekerja untuk saya.

Menggunakan Visual Studio? Team Explorer menangani otentikasi dengan Azure Repos untuk Anda.

Setelah saya terhubung ke repo menggunakan Team Explorer, saya dapat menggunakan baris perintah untuk menjalankan perintah git.

VahidNaderi
sumber
0

Buka Windows Credentials Manager dan perbarui kredensial untuk GIT.

Avinash Prabhakar
sumber