Kullanıcı ve parolayı Git Bash ile yapılandırma


96

Windows 7'de Git Bash kullanıyorum. Depo kaynağımız olarak GitHub kullanıyoruz.

Her ittiğimde veya çektiğimde kullanıcı ve parola kimlik bilgilerini sağlamam gerekiyor. SSH anahtarlarımın doğru ayarlandığını biliyorum, aksi takdirde arşive erişemem. (Yani, kimlik bilgilerimi girdikten sonra itme / çekme doğru çalışıyor.)

Girdim

git config --global user.name myusername
git config --global user.email myemail
git config --global github.user myusername
git config --global github.token mytoken

Ancak yine de her ittiğim / çektiğimde kimlik bilgileri isteniyor.


Yanıtlar:


64

HTTPS URL'si yerine GitHub deposu için SSH URL'sini kullandığınızdan emin olun. SSH'yi değil HTTPS'yi kullanırken kullanıcı adı ve şifre soracaktır. Dosyayı kontrol edebilir .git/configveya çalıştırabilir git config -eya git remote show originda URL'yi doğrulayabilir ve gerekirse değiştirebilirsiniz.


19
Dahili güvenlik duvarı kuralları nedeniyle SSH kullanamıyorum (sormayın ...) git login'e otomatik olarak izin vermenin başka bir yolu var mı?
Jorn

62

Git Bash'den şu komutu çalıştırmayı tercih ederim:

git config --global credential.helper wincred

Bu noktada, gibi bir komut çalıştırmak git pullve bir kez kimlik bilgilerinizi girmek, ileride kullanılmak üzere saklanmalıdır. Git, farklı işletim sistemi ortamlarında çalışan yerleşik bir kimlik bilgileri sistemine sahiptir. Daha fazla ayrıntıya buradan ulaşabilirsiniz: 7.14 Git Araçları - Kimlik Bilgileri Deposu


Bir linux alternatifi var mı, yoksa bu linux için de çalışıyor mu?
Tükendi

1
git config --global credential.helper cache help.github.com/en/github/using-git/…
Sam Sussman

Benim için hiçbir şey çalışmıyordu. Deliriyordum! Git'i yeniden kurdum ve bunu denedim ve harika çalıştı. Teşekkürler!!!
LTV

Win10 cmd konsolundan da çalıştı
dimplex

50

Erişim belirteci ve Windows ortamı kullananlar için bunu yapmanın basit bir yolu var:

Başlat menüsü → Kimlik Bilgisi YöneticisiWindows Kimlik Bilgileri → satırı bulun (Git: https: // her neyse / deponuz / url) → düzenle, kullanıcı adı "PersonalAccessToken" ve şifre erişim simgenizdir.


1
Ne zamandan tasarruf! Teşekkürler!!
riorio

12

Mac kullanıcısıysanız ve anahtar zincirini etkinleştirdiyseniz, anahtar zincirinde depolanan yetkilendirme bilgilerini kaldırmanız gerekir:

- Open up Keychain access
- Click "All items" under category in the left-hand column
- Search for git
- Delete all git entries.

Ardından, aşağıdakileri kullanarak kullanıcı adınızı ve e-postanızı terminalden değiştirmelisiniz git config:

$ git config --global user.name "Bob"

$ git config --global user.email "bob@example.com"

Şimdi, arşive göndermeye çalışırsanız, bir kullanıcı adı ve şifre girmeniz istenecektir. Geçiş yapmaya çalıştığınız oturum açma kimlik bilgilerini girin. Bu sorun normalde, farklı bir kullanıcı adı ve parola kullanarak bir tarayıcıda GitHub'da oturum açtıysanız veya terminalinizde daha önce hesap değiştirdiyseniz ortaya çıkar.


Bu bana yardımcı oldu. Git girişlerini silmenize gerek olmasa da, onları orada düzenleyebilirsiniz.
herrmartell

2

uzaktan kumandayı şu şekilde ekle:

git remote add https://username:password@github.com/repodir/myrepo.git

1

Git ile kullanmak üzere SSH anahtarını yüklemek için ssh-agent'ı deneyin. Bir parola kullanıldıktan sonra otomatik olarak oturum açmalıdır.


1

Windows için git bash ile, diğer yanıtların aşağıdaki kombinasyonu benim için çalıştı (depo GitHub istemcisi, yani ssh değil https kullanılarak kontrol edildi):

  1. Kişisel Erişim Jetonu Oluşturun
  2. Deponuzda bir git bash oturumu başlatın
  3. Çalıştırmak git config --global credential.helper wincred
  4. Çalıştırmak git pull
  5. Kullanıcı adı olarak PersonalAccessToken'ı verin
  6. Kişisel Erişim Jetonunu şifre olarak verin

0

Deponuz HTTPS deposu ise, git config -e bu komutu git bash içinde verin. Ekle modunda açarak kullanıcı adını ve parolayı güncelleyin, parolayı değiştirin veya kullanıcı adını verin: x ve Cntrl + z tuşlarına kaydedip çıkın

Bu yüzden, kodu arşive çekerken / ittiğinizde şifre sormayacaktır.


0

Cevabı bu linke yazdım ;

Yine de burada da paylaşıyorum.

Kullanıcı adını ve e-postayı global olarak değiştirin

git config --global user.name "<username>"
git config --global user.email "<email>"

Mevcut depo için kullanıcı adını ve e-postayı değiştirin

git config  user.name "<username>" --replace-all
git config  user.email "<email>" --replace-all
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.