İki faktörlü kimlik doğrulama ile https üzerinden GitHub'dan Git Clone


129

Yakın zamanda GitHub'da iki faktörlü kimlik doğrulamayı kullanmaya başladım ve artık git over https'yi özel depolarda her zamanki gibi kullanamıyorum:

peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo
Cloning into 'MyPrivateRepo'...
Username for 'https://github.com': [...]
Password for 'https://[...]@github.com': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/[...]/MyPrivateRepo/'

İki faktörlü kimlik doğrulamayı devre dışı bırakırsam, daha önce olduğu gibi kullanabilirim:

peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo
Cloning into 'MyPrivateRepo'...
Username for 'https://github.com': [...]
Password for 'https://[...]@github.com': 
remote: Counting objects: 147, done.
remote: Total 147 (delta 0), reused 0 (delta 0), pack-reused 147
Receiving objects: 100% (147/147), 22.70 KiB | 0 bytes/s, done.
Resolving deltas: 100% (87/87), done.
Checking connectivity... done.

SSH'yi kullanabileceğimi ve her şeyin işe yaradığını biliyorum, ancak HTTPS üzerinden GitHub'ı kullanmaya devam ederken, örneğin isteğimle birlikte bir kimlik doğrulama belirteci göndererek iki faktörlü kimlik doğrulamayı korumamın bir yolu var mı?

Yanıtlar:


155

Bunu nasıl düzelteceğinizi buradan öğrenin:

https://github.com/blog/1614-two-factor-authentication#how-does-it-work-for-command-line-git

Komut satırı Git için nasıl çalışır?

Git kimlik doğrulaması için SSH kullanıyorsanız, içiniz rahat olsun: hiçbir şey yapmanıza gerek yoktur. HTTPS Git kullanıyorsanız, şifrenizi girmek yerine kişisel bir erişim belirteci girin. Bunlar, kişisel erişim belirteçleri sayfanıza giderek oluşturulabilir .


2
Kimlik doğrulamasını da otomatik hale getirmek için belirteci aşağıdaki özette bulduğum .netrc dosyasına ekleyebilirsiniz .
Martin Woolstenhulme

1
Ama ssh kullanıyorum, github'dan çekerken, aynı zamanda şifre ve kullanıcı adı girmem için bana ipucu veriyor, neden bu? Cevabınız için teşekkürler!
starkshang

3
hala benim için çalışmıyor sudo git clone sonra mac'a erişim belirtecini girdikten sonra .... sistem şifre alanına kullanıcı adı ve şifre soruyor belirteç giriyorum ama benim için çalışmıyor. aynı hatayı alma
ojus kulkarni

40
Kartınızı kullanıcı adınız olarak kullanın ve boş bir şifre verin.
Kotie Smit

Jetonu github sitesinden manuel olarak kopyalarken (yani github kopyalama düğmesini kullanmıyorsanız) sondaki fazladan boşluğa dikkat edin. Bunun neden benim için işe yaramadığını anlamam biraz zaman aldı.
gmargari

34

Gereğince Nitsew en @ cevap, sizin oluşturma belirteci kişisel erişim ve adınız olarak bileti kullanabilir ve boş şifre ile girin.

Daha sonra tüm özel depolarınıza erişmek için herhangi bir kimlik bilgisine ihtiyacınız olmayacak.


Erişim belirtecinin uzak bir sunucuda nerede saklanmasını önerirsiniz?
bdoubleu

2

Mücadele eden herkes için, benim için işe yarayan şey kişisel erişim belirteci oluşturmak ve ardından bunu bir kullanıcı adı VE şifre olarak kullanmaktı (açılan istemde).


1

Deponuzda 2FA etkinse. Github.com tarafından sağlanan uygulamayı kullanmanızı şiddetle tavsiye ederim İşte bağlantı: https://desktop.github.com/

İndirip kurduktan sonra. Kartı takip edin, uygulama sizden oturum açmak için tek seferlik şifre girmenizi isteyecektir. Tek seferlik şifreyi girdikten sonra deponuzu / projelerinizi şimdi görebilirsiniz.


yalnızca Windows kullanıyorsanız yardımcı olur
Ian Turton

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.