Kimlik doğrulama bitbucket için başarısız oldu


91

Sourcetree kullanarak bitbucket üzerindeki https protokolü aracılığıyla projemi göndermeye çalışıyorum.
Ancak giriş bilgilerim ve parolamla (web sitesinde çalışan) bitbucket'a bağlanamıyorum, ölümcül bir hata alıyorum: "Kimlik doğrulama başarısız".

Https yerine ssh protokolünü kullanarak sorunu çözebilirim, bu yüzden kaynak ağacı sss'deki talimatları izleyerek bir ssh anahtarı ayarlıyorum . Ama şimdi kodumu zorlamak istediğimde ssh protokolüne nasıl geçebileceğimi bilmiyorum. Bunu nasıl yapabileceğimi bilen var mı? Teşekkür ederim.


13
Uzak kaynak adresini https ( yani: https: // <kullanıcıadı> @ bitbucket.org / <kullanıcıadı> / <repo> .git ) 'den ssh ( yani: git@bitbucket.org: <kullanıcı> / <repo>' ye değiştirin. git ). Bu adresleri arşiv sayfanızın sağ tarafında bulacaksınız. ( git remote set-url origin git@bitbucket.org: <user> / <repo> .git )
Alexandru Guzinschi

Bu cevap olarak işaretlenmelidir.
ronnyfm

Henüz çözüm yok mu? (Bakarak kabul edilen bir cevap olmadığını varsayıyorum)
Talha

Varsayılan kullanıcı adlarını ve kayıtlı şifreleri silin, Benim için benzer bir sorunla çalıştı. Araçlar> Seçenekler> Kimlik Doğrulama
NoamG

Uzaktan kimlik doğrulama sunucusu kapandığında bu bana oldu. Eğer durum buysa, bu konuda yerel olarak taahhütte bulunmak ve sabırlı olmak dışında hiçbir şey yapılamaz.
Cameron Donahue

Yanıtlar:


123

GIT konsolunda kimlik doğrulama sorunları yaşıyorsanız, aşağıdaki komutla yapılandırmanızı HTTPS olarak değiştirmeyi deneyebilir ve kullanıcı ve parola belirtebilirsiniz:

https://<username>:<password>@bitbucket.org/<username>/<repo>.git

AMA DİKKATLİ: Çok uzun zaman önce verdiğim bu cevaba geri dönersek, şifrenin .git/configdosyada açık metin olarak saklandığına işaret ettiği için @ChristopherPickslay'e kredi vermek istiyorum .

HTTPS ile kullanmak istiyorsanız, şifrenizi Git kimlik bilgisi yöneticisi ile güvenli bir şekilde saklayabilirsiniz.

Ancak kişisel olarak, şimdi her zaman SSH kimlik doğrulamasını kullanıyorum, çünkü daha iyi bir uygulama gibi görünüyor, çünkü şifrenizin dışarıda saklanmasını engelleyecek kişisel bir genel / özel anahtar çifti kullanıyorsunuz. Gerçekte, anahtarınıza bir parola koyabilirsiniz ve ardından parolayı bir kimlik bilgisi yöneticisine veya ssh-agent'a kaydetmeniz gerekir.


3
Err ... Cevabım rastgele değildi. Aynı sorunu yaşadığım ve SSH protokolüne geçmek istediğim için, ancak çalışmasını sağlamak için buna gerek yok. Doğrudan şifre belirleme, https kimlik doğrulama yönteminin çalışmasını sağlayabilir. Sadece söylüyorum'.
Alex

2
Bunun rastgele olmadığının farkındayım ama soruyu cevaplamıyor. Cevabınızı SSH kimlik doğrulamasını da ele alacak şekilde değiştirirseniz, olumsuz oyumu kaldırmaktan memnuniyet duyarım :)
Dan

19
Olumsuz oyu geri almak. Bu benim sorunumu çözdü. Bir ssh çözümü istemedim. Yığın taşma soruları bir boşlukta yaşamaz. Yararlı bir yanıt, yararlı bir yanıttır.
funroll

11
Ayrıca kullandığım belirli komuta dikkat çekiyordum git remote set-url origin https://<username>:<password>@bitbucket.org/<username>/<repo>.git.
funroll

22
Bu, şifrenizi .git / config dosyanıza açık metne koyar
Christopher Pickslay

47

Yakın zamanda SourceTree ile benzer bir sorun yaşadım: uzak orijinden itmeye / çekmeye / getirmeye çalıştığımda bir kimlik doğrulama hatası alıyordum (Stash ile SourceTree kullanarak). Bazen bir CAPTCHA ile Stash'ta meydan okurdum, ancak doğru bilgiyi verip vermemem hiçbir zaman fark yaratmadı.

Benim için SourceTree ve Stash'ı kurumsal bir ortamda kullanıyoruz; kullanıcı hesapları ağ kimlik bilgilerine dayanır. Ağ güvenliğimizin bir kısmı, bu parolaları düzenli olarak değiştirmemizi gerektirir.

SourceTree / Stash'in ağ parolamda yapılan herhangi bir değişikliğin "farkında" olduğu varsayımıyla çalışıyordum. Ama görünüşe göre - en azından bu durumda - değildi.

Düzeltmek için tek yapmam gereken şuydu:

Araçlar> Seçenekler> Kimlik Doğrulama> Düzenle (Şifreyi Düzenle)

Parolayı mevcut ağ parolamla eşleşecek şekilde ayarladım ve her şey beklendiği gibi çalışmaya başladı.

Bunun OP'ye yardımcı olup olmadığından emin değilim, ancak umarım başka birinin benzer bir soruna cevap aramasına yardımcı olabilir.


Ben SourceTree + Bitbucket kullanarak ancak am değil önerilen yöntemle kurumsal bir ortamda (yani belirli Bitbucket kimlik) ve şifreyi değiştirerek çalıştı. Teşekkürler :)
Steve Wilford

8
SourceTree'de 'Araçlar', 'Seçenekler', 'Kimlik Doğrulama' veya 'Şifreyi düzenle' gibi bir şey bulamıyorum .. Yine de Mac kullanıyorum.
Sti

1
@Sti Mac kullanıcılarının SourceTree menüsü altındaki Tercihler'e gitmeleri gerekir (Araçlar / Seçenekler menüsü yerine).
Brendan Simon

Mac kullanıcıları için: SourceTree -> Tercihler -> Hesaplar'a gidin, hesabı seçin, Düzenle'yi tıklayın, ardından Hesabı Bağla'yı tıklayın ve orada Atlassian hesabınızla oturum açın.
Vladimir Grigorov

23

Araçlar -> seçenekler -> git ve 'git sistemi kullan' seçeneğini seçmek benim için sihri yaptı.


4
OSX'te 'SourceTree> Tercihler> Git'.
Tbadams

22

Diğer her şeyi denedim ve çaresiz buldum ama bu gerçekten işe yaradı "Kimlik bilgilerinizi güncellemek için Denetim Masası -> Kimlik Bilgileri Yöneticisi -> Genel Kimlik Bilgileri'ne gidin . Git hesabınızla ilgili kimlik bilgilerini bulun ve güncellenmiş şifreleri kullanmak için düzenleyin".

Bu bağlantıda bulunan yukarıdaki Çözüm: https://cmatskas.com/how-to-update-your-git-credentials-on-windows/


1
Windows 10'a özel olmak için: Denetim Masası -> Kullanıcı Hesabı -> Kimlik Bilgileri Yöneticisi -> Windows Kimlik Bilgilerini Yönet
William Hou

16

Sorunu OS X Keychain'de depolanan değeri düzenleyerek çözdüm : "bitbucket"( Uygulama şifresi olarak ) aradım ve değeri değiştirdim.

Sonra Sourcetree'de , zorlamaya çalıştığımda, doğrudan yeni parolamı tekrar girmek zorunda kaldım.


2
Bu anahtar zincirini silmek bana yardımcı oldu çünkü kaynak ağacının yeni şifre istemesine neden oldu.
novomanish

MacOS 10.13'te (High Sierra) , anahtar zinciri girişlerini sildikten sonra bunun çalışması için makineyi yeniden başlatmak (veya belki de en azından oturumu kapatmak / oturum açmak) çok önemlidir . Aksi takdirde yeni şifre Sourcetree tarafından anahtar zincirinde saklanamaz ve her git işlemi birçok şifre istemine neden olur.
Ernie

11

Özel karakterler (! "§ $% &&) kullanılmadan arşiv şifresini değiştirdikten sonra sorun benim için çözüldü.

Açıkçası, win-credential-store ve git ve bitbucket'ın web arayüzü farklı karakter kodlamaları kullanıyor.

tam prosedür:

D:\shared\Project> cd /path/to/your/project
D:\shared\Project> git init
D:\shared\Project> git remote add origin https://bitbucket.org/USERNAME/project.git
D:\shared\Project> git-credential-winstore.exe

sonra

D:\shared\Project> git push
Failed to erase credential: Element not found
fatal: Authentication failed for 'https://bitbucket.org/USERNAME/project.git/'

Parolayı değiştirdikten sonra:

D:\shared\Project> git push
Counting objects: 102, done.
Delta compression using up to 8 threads.
... etc. ...

Windows tresory'deki ayarlar:

address: git:bitbucket.org (remeber the preceding "git:")
user: USERNAME
pass: old incl!"§§$%&, new without!"§$%%&/( (your passphrase!)

Benzer şekilde, kullanıcı adımı içinde alt çizgi olmayan bir şeyle değiştirmem gerekiyordu.
Overlord Zurg

1
Vay. bu suç açısından aptallığın ötesinde. Görünüşe göre, tüm Atlas bitbucket hesap şifrelerinin içinde sembol olmadığını biliyoruz. Ughhh.
deweydb

9

Windows başlangıç ​​menüsü, Windows kimlik bilgisi yöneticisini ara. Bitbucket url'sini arayın, şifreyi orada güncellemeyi deneyin .. ve git işlemini tekrar yapın. İşe yaramalı.


Benim durumumdaki çözüm buydu. Windows-7 çalıştırıyorum ve yakın zamanda şifre değişikliği yaptım. Bitbucket sunucusu için önbelleğe alınan kimlik bilgileri Kimlik Bilgileri Yöneticisi'nde güncelliğini yitirdi.
Brett

Doğru, Windows kimlik bilgisi yöneticisi parolaları ve ayrıntıları saklar. Sorun önbellekten kaynaklanıyor. Bu nedenle, her zaman kimlik bilgileri yöneticisindeki şifreyi kontrol edin.
Pankaj Chauhan


4

Ben de aynı sorunu yaşadım. Windows için Git'teki bir hatayla ilgisi var. Benim için SourceTree'de kullanılan Git'i gömülü olanla değiştirmek yeterliydi:

Araçlar -> Seçenekler -> Git ve 'Gömülü Git Kullan' düğmesini tıklayın


4

Tools> Options> Use System Git'I seçin git.exedosyayı

görüntü açıklamasını buraya girin

Kimlik bilgileri tekrar gerekli olacak ve sorun çözülecektir.


Bunun neden işe yaradığına dair herhangi biri ayrıntı verebilir mi?
Scope Creep

3

Bununla uzun süre mücadele ettikten sonra, işe yarayan bir şey buldum gibi görünüyor. URL'leri kullanıcı adını içermeyecek şekilde optimize ediyordum (mümkün olduğunca genel olarak saklayın), ancak kimlik doğrulama iletişim kutusu açıldı:

görüntü açıklamasını buraya girin

Aklıma gelen her şeyi denedim, örneğin:

  1. MFA'yı (Multi Factor Authentication) etkinleştirin ve devre dışı bırakın
  2. Uygulama şifreleri oluşturun (tekrar, MFA etkin ve etkin olmadan)

Hangi araçları kullandığım önemli değil (SourceTree dahil), hiçbir şey işe yaramadı. Sunucu, "Uygulama şifresi oluştur" şeklinde geri dönmeye devam etti

Temelde yapmalısın

  1. Kullanıcı adını içeren url'yi kullanın (ör. Https: //myusername@bitbucket.org/ ... )
  2. Bitbucket'ta oluşturulan bir uygulama şifresini kullanın

Sunucu bir uygulama şifresi kullanmayı önermek yerine bunu yanıt olarak döndürseydi çok iyi olurdu ...


3

For Mac Kullanıcıları . Kaynak ağacında, mevcut URL'm farklı bir bitbucket hesabına ait olduğu için URL'yi klonlamama izin vermeyen varsayılan bir hesap vardı. Yani, geçersiz kaynak yolunu gösteriyor ve ardından Gelişmiş Seçeneklere tıklıyorum ve kimlik doğrulamasının your_clone_url için başarısız olduğunu görüyorum. Öyleyse, şu adımları izleyin

  1. Kaynak Ağacı'nı seçin. Git SourceTree menüsü > Seç - Tercihler .
  2. Hesaplar penceresini gösterecektir . Ardından Hesapları Seçin görüntü açıklamasını buraya girin

Burada, eklediğiniz hesapların listesini gösterecektir. En alttan Ekle düğmesine tıklayın ve yeni bitbucket hesap ayrıntılarınızı ekleyin. Hesabınızı Hesaplar sekmesi altında listeleyecektir. Alttaki Varsayılan Yap .. düğmesine tıklayarak da varsayılan hesabı ayarlayabilirsiniz . Şimdi her şey yapıldı.


2

Google / diğer oauth kullanarak bir hesap oluşturduysanız, önce hesabınız için bir bitbucket şifresi belirlemeniz gerekir. Bunun URL'si şudur: https://bitbucket.org/account/user/ / veya menü altında Bitbucket ayarlarını arayın.

Daha sonra git üzerinden giriş yapabilir (Komut satırından denedim). Kimlik bilgileri için yerleşik yöneticiyi kullanıyorum:

credential.helper = yönetici

Şimdi, bitbucket sitesinde şifreyi ayarladıktan sonra (e-posta da doğrulandı) ve tekrar basmaya çalıştıktan sonra, şifreyi sordu, sonra kodu itti.

Mayıs 2016 itibariyle bitbucket web sayfasındaki menü konumu görüntüsü -> http://ctrlv.in/747291 .


2

Ben de aynı sorunu yaşadım. Bitbucket ayarlarınızda kaynak ağacı için bir uygulama şifresi eklemeniz gerekiyor. Menüde "Bitbucket ayarları" nı tıklayın, Uygulama şifreleri, uygulama şifresi oluşturun. Ardından SourceTree'ye gidin ve kayıtlı şifrenizi düzenleyin


1
  • Şirket içinde ancak her yerde geçerli olacak.
    • Bitbucket'tan çıkış yapın (kullanıyorsanız)
    • Kimlik bilgilerinizle giriş yapın
    • Konsola geri dön
    • Aynı komutu çalıştır
    • Parola soracaktır - Sağlayın.
    • Senin gitmen iyidir.

1

Bu sorun , git hesabınızın ve bilgisayarınızın parolasının farklı olabileceğinden oluşur. Bu nedenle , aşağıdaki örnekte gösterildiği gibi kullanıcı adınızı ekleyin :

https://myusername@bitbucket.org/...

https: //devi@bitbucket.org/...


1

OBSOLETE CEVAP - 17 KASIM 2020 DOĞRULANMIŞTIR


Mac'te adresine gitmem Preferences > Accounts, ardından yeni bir hesap eklemem Bitbucket Serverve şirketimin bitbucket sunucusu URL'sini girmem gerekiyordu. Daha sonra HTTPSprotokol olarak seçmem ve kullanıcı adımı (@ e-posta olmadan) ve şifremi girmem gerekiyordu.

Ayrıca sayfanın Set Default...altındaki butona tıklayarak bu yeni hesabı varsayılan hesap olarak ayarlıyorum Preferences > Account.


0

Yukarıdakilerin hiçbiri benim için işe yaramadı - sorun Sourcetree Tercihlerimde yatıyordu. Ağ sekmesinde, 'Bir tane içermeyen URL'ler için varsayılan kullanıcı adları:' için bir ayarım vardı. Kullanıcı adı, daha önce yanlış girdiğim yerde yanlıştı - kullanıcı adı yerine e-postama ayarlamıştım. Girişleri vurguladım ve her ikisi için de Kaldır'a tıkladım. Sonra depo sayfama döndüm ve tekrar Push'a tıkladım. Bastırdığımda, benden doğru bir şekilde girebildiğim tam kullanıcı adı ve şifreyi istedi - sonra itme sonunda çalıştı.


0

Benim için sorun, Sourcetree'ye eklenen bir hesabım olmamasıydı.

Bir hesap eklemek, depoma aktarmama izin verdi:

Araçlar> Seçenekler> Kimlik Doğrulama> Ekle> OAuth Jetonunu Yenile

görüntü açıklamasını buraya girin


0

Burada verilen neredeyse tüm çözümü denedim.

Benim için işe yarayan, GIT GUI'yi açtım ve bunda Push yapmaya çalıştım. Kimlik bilgilerini isteyen, doğru kullanıcı kimliği ve şifreyi girerek tekrar çalışmaya başlayacaktır.


0

Aşağıdaki komutu kullanıyordum

git clone -b branch-name https://<username>@bitbucket.org/<repository>.git

Kullanıcı adıyla şifre ekledikten sonra sorun çözüldü (aşağıdaki komuta bakın):

git clone -b branch-name https://<username>:<password>@bitbucket.org/<repository>.git

0

Pencerelerde bu benim için çalıştı

git config --global http.sslVerify false


0

Etki alanı için şifre sıfırlama gerçekleştiğinde de aynı sorunu yaşıyorum.
(Araçlar> Seçenekler> Kimlik Doğrulama) bölümündeki hemen hemen tüm adımları denedim . Ama hiçbir şey işe yaramadı. Sonunda atlassian topluluk sayfasından aşağıdaki cevabı aldım ve işe yaradı.

Benim için işe yarayan tek şey C: \ Users \ USERNAME \ AppData \ Local \ Atlassian \ SourceTree'ye gitmek ve passwd dosyasını kaldırmaktı.

Bu dosya silindikten sonra, sadece bir "Push" yaptım ve sonunda şifremi sordu

https://community.atlassian.com/t5/SourceTree-questions/How-to-update-HTTP-S-credentials-in-sourcetree/qaq-p/297564

https://community.atlassian.com/t5/Sourcetree-questions/Getting-quot-fatal-Authentication-failed-for-quot-error/qaq-p/624663


0

Gösterilen örnek olarak Kişisel Erişim Belirteçleri eklememe rağmen Azure DevOps kullanarak bu hatayı aldım.

görüntü açıklamasını buraya girin

git pull -vSourcetree terminalinden çalıştırarak ve Personal Access Token'ları oradan tekrar ekleyerek çözdüm.

görüntü açıklamasını buraya girin


0

Deniyordum git push --all bitbucketçağrı ve geri atma "ölümcül: Doğrulama 'https için başarısız oldu: // ..." yanıtını. Benim için işe yarayan çözüm, komutu şu şekilde değiştirmekti:

git push --all https://{username}@{url}

Windows'ta bu, şifremi girmeme izin veren bir iletişim kutusu açtı ve push çalıştı.

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.