Bagaimana cara saya memperbarui kata sandi untuk Git?

567

Saya menggunakan BitBucket dengan Xcode dan Git untuk kontrol versi, dan baru-baru ini saya mengubah semua kata sandi saya ( terima kasih Adobe! ).

Tidak mengherankan, saya tidak lagi bisa mendorong komit lokal saya ke repositori saya di BitBucket ( Authentication failed for 'https://______.git'), tetapi saya lupa bagaimana memperbarui kata sandi yang di-cache di iMac saya. Entah bagaimana saya tidak dapat menemukannya di Google atau Stack Overflow, meskipun menurut saya itu seharusnya cukup mudah ...

Ken M. Haggerty
sumber
5
Mungkin disimpan di gantungan kunci OS X Anda (penyimpanan kata sandi)
knittl
2
Bisa dalam file .git / config Anda, jika nama pengguna / kata sandi Anda hanya disimpan dengan url git.
Erik Kerber

Jawaban:

869

Untuk memperbaikinya pada macOS, Anda dapat menggunakan

git config --global credential.helper osxkeychain

Permintaan nama pengguna dan kata sandi akan muncul dengan tindakan Git Anda berikutnya (tarik, tiruan, dorong, dll.).

Untuk Windows, ini perintah yang sama dengan argumen yang berbeda:

git config --global credential.helper wincred
Ken M. Haggerty
sumber
45
Pada Mac OS 10.12.2 dan ketika saya melakukan hal di atas - diperiksa dan periksa dua kali bahwa saya memasukkannya dengan benar - dan tidak ada yang terjadi.
b_dubb
59
@ b_dubb Mungkin tidak akan melakukan apa pun hingga saat berikutnya Anda menjangkau (mendorong, menarik, mengambil) maka Anda akan diminta untuk kredensial.
user2782001
3
@ user2782001 Saya menggunakan pembantu osxkeychain, menjalankan perintah mac tidak melakukan apa-apa. Saya menduga bahwa jika seseorang tidak menggunakan helper sebelumnya, mengubah konfigurasi untuk menggunakan helper, itu akan melihat bahwa kata sandi belum dimasukkan untuk remote itu, itu akan meminta, dan semuanya akan baik-baik saja pertama kali. Perubahan konfigurasi selanjutnya tidak akan meminta. The jawaban di bawah ini bekerja untuk saya.
neuralmer
102
Tidak berfungsi di windows. Tidak meminta kata sandi baru
disklosr
8
Ini bekerja di Mac OS Mojave. Terima kasih!
Nguyen Tran
509

Tidak ada jawaban lain yang berfungsi untuk saya di MacOS Sierra 10.12.4

Inilah yang harus saya lakukan:

git config --global --unset user.password

Kemudian jalankan perintah git Anda (mis. Git push) dan masukkan kembali nama pengguna dan kata sandi Anda.

Derek Lopes
sumber
40
Ini adalah metode yang tepat yang bekerja untuk saya (di mac)
shdobxr
1
Ini menyelamatkan saya! Saya menyimpannya di komposer, tetapi juga membuat auth.json yang mengganggu karena saya selalu lupa menambahkannya ke .gitignore.
cbloss793
1
Terima kasih, itu berhasil! sebelum itu meminta saya untuk kata sandi tetapi meskipun saya memasukkan kata sandi baru masih gagal.
Paul Taylor
6
Ini tidak membantu saya di Windows. Setelah perintah ini, saya telah mencoba untuk mendorong, dan berhasil, sehingga kata sandi masih tersedia untuk git
berdiri sendiri
1
Bekerja pada Win10. Pertama saya menggunakan perintah dari jawaban ini dan kemudian secara sederhana git pull- Munculan Windows muncul meminta kata sandi. Terima kasih!
shemekh
431

Di Windows 10 dengan Git

Hapus / perbarui Kredensial terkait yang disimpan di Kredensial Windows di >> Panel Kontrol \ Semua Item Panel Kontrol \ Manajer Kredensial

masukkan deskripsi gambar di sini

Imran Javed
sumber
9
Ini memang jalannya. Untuk pengguna yang harus bekerja dengan OS versi Belanda: kredensial ---> referentiebeheer
dexter
10
Ini adalah solusi paling sederhana. Yang perlu Anda lakukan adalah mengedit. Terima kasih.
Yuva
4
Btw, jalan bagi saya adalah Control Panel \ User Accounts \ Credential Manager tetapi yang terbaik adalah mengetikkan Credential untuk langsung masuk.
Everts
1
Terima kasih banyak! Simpan hari saya.
Dhaval Patel
2
Ini juga berfungsi pada Windows 7. Terima kasih :)
Vladislav
165

Satu-satunya cara saya bisa memodifikasi kata sandi git saya adalah pergi ke Credential Manager di Windows (Windows Key + ketik 'kredensial') dan mengedit entri git di bawah Kredensial Windows 🡒 Kredensial Generik. Catatan: Tidak terdaftar menurut abjad

bom1
sumber
5
Pertanyaan itu diajukan untuk macOS
Saikat
14
@ Malaikat namun, banyak dari kita dengan pertanyaan yang sama untuk windows akhirnya menemukan pertanyaan SO ini. Ini hampir seolah-olah pertanyaan itu sendiri sementara menandai macos tidak spesifik OS!
iheanyi
1
Ini adalah satu-satunya jawaban yang bekerja untuk saya pada Win 10
Kolob Canyon
87

Saya memiliki masalah yang sama, dan jawaban yang diterima tidak membantu saya karena kata sandi tidak disimpan di gantungan kunci. Saya mengetik:

git pull https://[email protected]/mypath/myrepo.git

Kemudian konsol meminta saya kata sandi baru saya.

Julián Martínez
sumber
1
Saya mencoba seperti ini saja tetapi masih muncul pop kredensial, alih-alih mengatur ulang kata sandi
Anita Mehta
Ini bekerja untuk saya, tetapi saya harus mengatur ulang captcha terlebih dahulu. Terima kasih.
fiskra
77

Di windows 10 pada yang disebutkan di atas oleh @Imran Javed Anda dapat menemukan Kredensial Generik di:

Panel Kontrol \ Semua Item Panel Kontrol \ Kredensial Manajer -> Kredensial Windows

untuk server git Anda dan kemudian Anda dapat memperbarui kata sandi dengan mengklik tombol edit.

masukkan deskripsi gambar di sini

nzrytmn
sumber
@halxinate sistem operasi yang Anda gunakan? Ini untuk windows 10.
nzrytmn
31

menjalankan git config --global --unset user.passworddiikuti dengan perintah git akan meminta Anda untuk memasukkan nama pengguna dan kata sandi.

git config --global --unset user.password
git push (will prompt you for the password)
git status (will not prompt for password again)
Shravan Ramamurthy
sumber
9
Yah, memanggil perintah git push (atau pull) hanya memberi saya kesalahan otentikasi dan akses ditolak. Tidak meminta saya
John Demetriou
Jawaban ini tidak mencakup apa pun yang tidak dicakup oleh Derek.
Bonifacio2
26

Di mesin Windows saya, saya mencoba solusi @nzrytmn yaitu, Control Panel> Cari Kredensial> Pilih "ManageCredentials"> modifikasi kredensial baru di bawah kategori opsi git yang sesuai dengan nama pengguna saya. Lalu,

Kata sandi saat ini dihapus:

git config --global --unset user.password

Kata sandi baru ditambahkan:

git config --global --add user.password "new_password"

Dan itu berhasil untuk saya.

Abimanyu Sharma
sumber
Tidak bekerja untuk saya. Saya telah menyelesaikan masalah seperti yang dijelaskan di sini: cmatskas.com/how-to-update-your-git-credentials-on-windows
vlad
TIDAK BEKERJA
Kamlesh
18

Jika Anda pengguna MAC maka Anda dapat membuka Aplikasi Akses KeyChain dari finder dan kemudian mencari akun Anda yang terdaftar di sana. Cukup klik dan perbarui kata sandi Anda. Sekarang cobalah dan semuanya akan beres.

tautan untuk referensi: Memperbarui kredensial Anda melalui Akses Keychain

Bekerja untukku. :)

Nishant
sumber
1
Inilah yang bekerja untuk saya! Ini memungkinkan kami untuk memperbarui kata sandi dari satu repo. Beberapa saran lain di halaman ini akan memengaruhi semua yang menyentuh git.
Stefan Lasiewski
13

Saya mendorong ke repositori untuk pertama kalinya. Jadi tidak ada yang HEADdidefinisikan.

Cara termudah adalah:

git push -u origin master

Ini kemudian akan meminta kata sandi, dan setelah Anda memasukkannya akan disimpan secara otomatis, dan Anda akan dapat mendorong.

Pritam Banerjee
sumber
jika saya mendorong dari lokal ke server jauh saya maka kata sandi mana yang harus saya gunakan? Apakah ini kata sandi kredensial server jarak jauh saya atau lainnya?
Fawwad
@ Fawwad Ini adalah kata sandi untuk repositori jarak jauh.
Pritam Banerjee
3
Server jarak jauh saya bukan github.com. Ini adalah server khusus saya di mana saya menginstal Git.
Fawwad
saya mengerti bagaimana ini akan membantu Anda mendorong pertama kali, tetapi bagaimana ini akan membantu untuk memperbarui kata sandi yang disimpan.
timwaagh
@ Fawwad tidak masalah apa yang Anda gunakan. Anda masih perlu memberikan kredensial yang menyediakan akses tulis ke repositori yang ingin Anda tulis.
iheanyi
8

lakukan langkah-langkah ini di Terminal:

  1. Hapus kata sandi saat ini yang disimpan di Mac Anda

    git config --global --unset user.password
    
  2. Tambahkan kata sandi baru Anda dengan menggunakan perintah ini, ganti dengan kata sandi baru Anda:

    git config --global --add user.password <new_pass>
    
Luthfi Rahman
sumber
4
Dengan cara ini kata sandi Anda disimpan dalam histori, dan siapa pun yang menjalankan perintah histori dapat melihatnya sebagai teks biasa. Untuk mencegahnya, Anda dapat menambahkan ruang tambahan sebelum perintah atau menjalankan perintah ini 'history -d 1234' dengan ID garis kanan sesudahnya
Lavandysh
8

Jika kredensial Anda disimpan dalam helper kredensial, cara portabel untuk menghapus kata sandi yang tetap ada untuk host tertentu adalah dengan menelepon git credential reject:

$ git credential reject
protocol=https
host=bitbucket.org
⏎

atau

$ git credential reject
url=https://bitbucket.org
⏎

Setelah itu, untuk memasukkan kata sandi baru Anda, ketik git fetch.

Marsu
sumber
2
peringatan: jalur kredensial tidak valid:? fatal: tidak dapat membaca kredensial dari stdin
pinei
7

Ada kebingungan tentang pertanyaan ini, karena ada terlalu banyak kerumitan dalam pertanyaan ini. MacOS vs Win10 pertama. Kemudian mekanisme auth yang berbeda.

Saya akan memulai jawaban terkonsolidasi di sini dan mungkin butuh bantuan, jika saya tidak mendapatkan bantuan, saya akan terus mengerjakan jawaban sampai selesai, tetapi itu akan memakan waktu.

Windows 10: | | -

MacOS: | |-- Using git config to store username and password: | git config --global --add user.password | |---- first time entry | git config --global --add user.password <new_pass> | |---- password update | git config --global --unset user.password | git config --global --add user.password <new_pass> | |-- Using keychain: | git config --global credential.helper osxkeychain | |---- first time entry | Terminal will ask you for the username and password. Just enter it, it will be | stored in keychain from then on. | |---- password update | Open keychain, delete the entry for the repository you are trying to use. | (git remote -v will show you) | On next use of git push or something that needs permissions, git will ask for | the credentials, as it can not find them in the keychain anymore.

pengguna637338
sumber
Berhasil. Jalankan <git config --global --unset user.password> lalu <git push origin master> akan menanyakan nama pengguna dan kata sandi. Terima kasih.
Renhuai
5

Anda dapat mengubah kata sandi melalui baris perintah di 2 tempat, berikut ini akan mengedit kredensial untuk menghubungkan repo

git config --edit 

Kredensial juga dapat diubah di global menggunakan parameter global seperti di bawah ini

 git config --global --add user.password "XXXX"

atau atur pembantu kredensial bersama

git config --global credential.helper wincred

tetapi jika Anda memiliki kredensial tingkat repo atur gunakan perintah pertama

git config --edit
Kamu yang lain
sumber
5

Untuk Mac

Jika Anda memiliki beberapa repositori jarak jauh (Github, Bitbucket, Job, dll.)

1) berjalan di direktori proyek

git config --unset user.password

2) jalankan perintah git jarak jauh (mis. Git push atau git pull)

Git akan meminta Anda untuk memasukkan kembali user.name dan user.password Anda untuk repositori ini

Atau Anda dapat melakukannya secara global jika Anda hanya memiliki satu repositori jarak jauh

git config --global --unset user.password
Andrey
sumber
4

Jika Anda menggunakan github dan telah mengaktifkan otentikasi 2 faktor, Anda harus memasukkan token akses Pribadi alih-alih kata sandi Anda

Pertama-tama atur ulang kata sandi Anda:

git config --global --unset user.password

Kemudian, masuk ke akun github Anda, di sudut kanan, klik Pengaturan, lalu Pengaturan Pengembang. Buat token akses Pribadi. Salin itu.

git push

Terminal akan meminta Anda untuk nama pengguna Anda: masukkan alamat email Anda.

Jika diminta kata sandi, masukkan token akses pribadi.

Raphael Pinel
sumber
2

Saya akan mencoba untuk menghapus akun saya di Akses Keychain dan kemudian berjalan git clonekembali. Git akan meminta saya kata sandi baru.

Hiro
sumber
Inilah yang saya pilih untuk dilakukan. Saya memiliki beberapa akun github yang disimpan di Keychain. Saya memilih untuk menghapus semuanya. Berhasil mendorong cabang lokal saya.
Pelatih Roebuck
1
bukan jawaban yang bagus Kloning ulang terlalu banyak untuk tugas sederhana ini
Kolob Canyon
2

Mencoba segalanya tetapi tidak ada yang berhasil. Kemudian yang berikut ini berhasil.

  1. Sebelum langkah-langkah di atas, kunci dan buka kunci lagi karena kadang-kadang macet.
  2. Instal GitHub Desktop - ini membantu.

sumber
Bagaimana kamu melakukannya?
Shekhar Sahu
2

Bagi mereka yang mencari cara mengatur ulang akses ke repositori. Dengan contoh GitHub. Anda dapat mengubah kata sandi profil GitHub Anda dan mencabut semua "Token akses pribadi" di "Pengaturan -> Pengaturan pengembang" dari profil Anda. Anda juga dapat menghapus semua kunci SSH / PGP dan aplikasi OAuth / GitHub Anda secara opsional untuk memastikan bahwa akses ke repositori benar-benar diblokir. Dengan demikian, semua manajer kredensial, pada sistem apa pun akan gagal saat otorisasi dan meminta Anda untuk memasukkan kredensial baru.

berdiri sendiri
sumber
2

Langkah-langkah berikut dapat menyelesaikan masalah ini .....

  1. Buka folder ~ / Perpustakaan / Dukungan Aplikasi / SourceTree
  2. Hapus file {Username}@STAuth-bitbucket.org
  3. Mulai ulang Sourcetree
  4. Cobalah untuk mengambil, kata sandi yang diajukan muncul, berikan kata sandi Anda yang baru
  5. Juga dapat menjalankan perintah "git fetch" di terminal dan perlu mengetikkan kata sandi
  6. Selesai
emraz
sumber
1

Dalam artikel ini , mereka menjelaskannya dengan cara yang sangat mudah tetapi pada dasarnya, kita hanya perlu menjalankan git remote set-url origin "https://<yourUserName>@bitbucket.org/<yourRepo>"dan lain kali Anda melakukan git pullatau git pushAnda harus memasukkan kata sandi Anda.

robertovg
sumber
1

kata sandi saya bagus di preferensi desktop github tetapi salah dalam file .git / config

bagi saya satu-satunya solusi yang berfungsi adalah mengedit file secara manual: .git / config

yang berisi baris ini: url = https: // user: [email protected]/user/repo.git

ubah kata sandi menjadi kata sandi BAIK karena kata itu lebih lama untuk saya

Damien Mattei
sumber
0

Jika solusi di atas tidak berfungsi, cobalah untuk mengubah url hapus git Anda.

git remote -v

git set-url remote asal

Sujith
sumber
0

Saya dapat mengubah kata sandi git saya dengan masuk ke Credential Manager di Windows dan menghapus semua entri git di bawah Kredensial Windows 🡒 Kredensial Generik.

Saat melakukan git pull atau git push, windows akan menanyakan pengguna / kata sandi baru itu sendiri.

shaurya airi
sumber
0

Untuk pengguna MAC, menggunakan git GUI ( Bekerja untuk Sourcetree , dapat bekerja untuk orang lain juga). Ingin menambahkan komentar kecil pada jawaban Derek ( https://stackoverflow.com/a/45703718/7138492 ). Saran asli:

$ git config --global --unset user.password

harus diikuti oleh push / pull / fetch TAPI itu mungkin tidak berfungsi ketika dilakukan dari GUI. Kasus kerja% 100 adalah melakukan perintah git pemicu prompt berturut-turut dari konsol. Berikut ini sebuah contoh:

  1. Temukan direktori root repositori git Anda
  2. Ketikkan $ git config --unset user.password
  3. Lanjutkan dengan git commend pilihan Anda di terminal mis: $ git push

Maka ia akan meminta Anda untuk memberikan kata sandi baru.

Serj Ardovic
sumber