Bitbucket'teki Git deposuna aktarılamıyor


143

Yeni bir depo oluşturdum ve garip bir hatayla karşılaşıyorum. Git'i daha önce Bitbucket'te kullandım, ancak sadece yeniden biçimlendirdim ve şimdi Git'in çalışmasını sağlayamıyorum. Bir taahhütte bulunduktan sonra, e-postamı ve adımı globallere eklemek zorunda kaldım, ancak daha sonra gayet iyi işledi.

Komutu kullanmaya çalıştığımda

git push origin master

çalışmıyor. Bu mesajı alıyorum:

$ git push origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Burada kayboldum. Bu veri havuzunu paylaştığım arkadaşım ona iyi ulaştı ve ona iyi bir şekilde itti, ama işe yaramayacak gibi görünmüyorum.


4
uzak URL'nizdeki gits yerine https kullanabilirsiniz. ör. kullanıcı adınız@bitbucket.org/teamname/repository.git
Ali

1
Atlassian'ın makinenizde SSH'yi nasıl kuracağınızla ilgili eğiticisini yakından izleyerek de aynı sorunu
çözdüm

Yanıtlar:


229

Windows'ta Git ve BitBucket ile yeni başlayanlar ve Bash'a aşina olmayanlar için bunu yazıyor (çünkü bu, soru içinde hata mesajını ararken hem yaygın bir sorun hem de yüksek bir Google sonucudur).

HTTPS'yi umursamayan ve hızlı bir düzeltme arayanlar için, LAZY İÇİN İÇİN altındaki talimatlar için bu cevabın alt kısmına gidin

Asıl sorunu çözmek isteyenler için aşağıdaki talimatları izleyin:

SSH sorununu olabildiğince hızlı çözme

Bu, VonC tarafından bağlanan URL'den türetilen bir talimatlar dizisidir. Mümkün olduğunca esnek ve özlü olacak şekilde değiştirildi.

  • Yazmayın $ile başlamayan veya herhangi hatları $( $yollarla bu GitBash yazdığınız bir şeydir).

  • GitBash'i açın

Henüz yapmadıysanız global bilgilerinizi ayarlayın:

$ git config --global user.name "Your Name"
$ git config --global user.email "you@example.com"

OpenSSH'yi kontrol edin:

$ ssh -v localhost
OpenSSH_4.6p1, OpenSSL...

Böyle bir şey gördün mü?

  • Evet devam et.
  • Hayır: LAZY FOR İÇİN bölümüne geçin veya VonC'nin bağlantılı makalesini takip edin.

Anahtarları zaten oluşturup oluşturmadığınıza bakın:

$ ls -a ~/.ssh/id_*

İki dosya varsa, bir sonraki adımı atlayabilirsiniz.

$ ssh-keygen

Her şeyi varsayılan olarak bırakın, bir parola girin. Şimdi bu komutla sonuçları görmelisiniz:

$ ls -a ~/.ssh/id_*

Mevcut bir yapılandırma dosyasını kontrol edin:

$ ls -a ~/.ssh/config

Sonuç alırsanız, hatalı bilgi için bu dosyayı kontrol edin. Hiçbir dosya yoksa, aşağıdakileri yapın:

$ echo "Host bitbucket.org" >> ~/.ssh/config
$ echo " IdentityFile ~/.ssh/id_rsa" >> ~/.ssh/config

İçeriği onaylayın:

$ cat ~/.ssh/config

Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa
  • "IdentityFile" dan önce tek boşluk gerekir.

GitBash'i her çalıştırdığınızda SSH aracısını başlattığınızı kontrol edin:

$ cat ~/.bashrc
  • Adlı bir işlev görürseniz start_agent, bu adım zaten tamamlanmıştır.
  • Dosya yoksa, devam edin.
  • Bu işlevi içermeyen bir dosya varsa, yapışkan bir durumdasınız demektir. Muhtemelen (aşağıdaki talimatları kullanarak) eklemek güvenlidir, ancak olmayabilir! Emin değilseniz, aşağıdaki talimatları izlemeden önce .bashrc'nizin bir yedeğini alın veya LAZY FOR İÇİN bölümüne geçin .

.Bashrc dosyanızı oluşturmak için GitBash'e şunu girin:

$ echo "SSH_ENV=$HOME/.ssh/environment" >> ~/.bashrc
$ echo "" >> ~/.bashrc
$ echo "# start the ssh-agent" >> ~/.bashrc
$ echo "function start_agent {" >> ~/.bashrc
$ echo "    echo \"Initializing new SSH agent...\"" >> ~/.bashrc
$ echo "    # spawn ssh-agent" >> ~/.bashrc
$ echo "    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > \"\${SSH_ENV}\"" >> ~/.bashrc
$ echo "    echo succeeded" >> ~/.bashrc
$ echo "    chmod 600 \"\${SSH_ENV}\"" >> ~/.bashrc
$ echo "    . \"\${SSH_ENV}\" > /dev/null" >> ~/.bashrc
$ echo "    /usr/bin/ssh-add" >> ~/.bashrc
$ echo "}" >> ~/.bashrc
$ echo "" >> ~/.bashrc
$ echo "if [ -f \"\${SSH_ENV}\" ]; then" >> ~/.bashrc
$ echo "     . \"\${SSH_ENV}\" > /dev/null" >> ~/.bashrc
$ echo "     ps -ef | grep \${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {" >> ~/.bashrc
$ echo "        start_agent;" >> ~/.bashrc
$ echo "    }" >> ~/.bashrc
$ echo "else" >> ~/.bashrc
$ echo "    start_agent;" >> ~/.bashrc
$ echo "fi" >> ~/.bashrc

Dosyanın başarıyla oluşturulduğunu doğrulayın (sizinki yalnızca "kullanıcı adınızın" göründüğü yerde farklı olmalıdır):

$ cat ~/.bashrc
SSH_ENV=/c/Users/yourusername/.ssh/environment

# start the ssh-agent
function start_agent {
    echo "Initializing new SSH agent..."
    # spawn ssh-agent
    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
    echo succeeded
    chmod 600 "${SSH_ENV}"
    . "${SSH_ENV}" > /dev/null
    /usr/bin/ssh-add
}

if [ -f "${SSH_ENV}" ]; then
     . "${SSH_ENV}" > /dev/null
     ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
        start_agent;
    }
else
    start_agent;
fi
  • GitBash'i kapatın ve tekrar açın.
  • Parolanızı girmeniz gerekir (daha önce oluşturduğunuz SSH dosyası için).
  • Herhangi bir istem yoksa, bir parola belirlemediniz veya GitBash .bashrc betiğini çalıştırmıyor (garip olurdu, bu yüzden içeriğini gözden geçirmeyi düşünün!). Bunu bir Mac'te (OS X) .bashrcçalıştırıyorsanız, varsayılan olarak yürütülmez - .bash_profileis. Bunu düzeltmek için bu pasajı şuraya koyun .bash_profile:[[ -s ~/.bashrc ]] && source ~/.bashrc

Bir parola girmeseydiniz, GitBash'i başlatırken şöyle bir şey görürdünüz:

Initializing new SSH agent...
succeeded
Identity added: /c/Users/yourusername/.ssh/id_rsa (/c/Users/yourusername/.ssh/id_rsa)

Ve aşağıdakiler sonuçları döndürmelidir:

$ ssh-add -l

Ancak, aşağıdakilerden birini alırsanız ssh-add -l:

Could not open a connection to your authentication agent.

SSH ajanını üretmedi ve .bashrc'niz muhtemelen nedeni.

GitBash'i başlatırken şunu görürsünüz:

Initializing new SSH agent...
sh.exe": : No such file or directory

Bu, dosyaya yankılanırken $ 'dan bir \ ile çıkmayı unuttuğunuz anlamına gelir (yani, değişkenler genişletildi). Bu sorunu çözmek için .bashrc dosyanızı yeniden oluşturun.

Aracının çalıştığını ve anahtarlarınızın eklendiğini doğrulayın:

$ ssh-add -l

Buna benzer bir şey döndürmelidir:

2048 0f:37:21:af:1b:31:d5:cd:65:58:b2:68:4a:ba:a2:46 /Users/yourusername/.ssh/id_rsa (RSA)

Ortak anahtarınızı almak için aşağıdaki komutu çalıştırın:

$ cat ~/.ssh/id_rsa.pub

("ssh-rsa ......" ile başlayan bir şey döndürmelidir

  • GitBash pencere simgesini tıklayın
  • Düzenle'yi tıklayın
  • İşaretle'yi tıklayın
  • Farenizi kullanarak ortak anahtarı vurgulayın (ön ssh-rsabit ve son == youremail@yourdomain.combit dahil)
  • Pencereyi sağ tıklayın (bir kopyasını gerçekleştirir)
  • Genel anahtarınızı Not Defteri'ne yapıştırın.
  • Tüm yeni satırları yalnızca tek bir satır olacak şekilde silin.
  • Basın CTRL+Asonra CTRL+Cpanoya tekrar genel anahtarı kopyalamak için.

Aşağıdaki adımları uygulayarak özel anahtarınızı BitBucket ile yapılandırın:

  • Tarayıcınızı açın ve BitBucket.org sitesine gidin
  • İçin Oturum BitBucket.org
  • Avatarınızı tıklayın (sağ üst)
  • Hesabı Yönet'i tıklayın
  • SSH Anahtarları'nı tıklayın (soldaki menüde Güvenlik altında)
  • Anahtar Ekle'yi tıklayın
  • Global Public KeyEtiket için Enter
  • Not Defteri'nden kopyaladığınız genel anahtarı yapıştırın

Global Public KeyAnahtar girişinizde artık bir giriş görünmelidir.

  • GitBash sayfasına dön
  • projenizi içeren dizine cd
  • Menşeinizi SSH varyasyonuna değiştirin ( LAZY FOR FOR adımlarını çalıştırırsanız olmayacaktır )

Uzaktan kumandalarınızı kontrol edin:

$ git remote -v

SSH URL'sine geçin:

$ git remote set-url origin git@bitbucket.org:youraccount/yourproject.git

İşlerin düzgün çalışıp çalışmadığını kontrol edin:

$ git remote show origin

Bunun gibi bir şey görmelisin:

Warning: Permanently added the RSA host key for IP address '...' to the list of known hosts.
* remote origin
  Fetch URL: git@bitbucket.org:youruser/yourproject.git
  Push  URL: git@bitbucket.org:youruser/yourproject.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (fast-forwardable)

YAPILAN!

SSH yerine HTTPS kullanmayı tercih edebilirsiniz. Uzaktan işlemler sırasında parolanızı yazmanız gerekir (bir kez yazıldıktan sonra geçici olarak önbelleğe alınır). HTTPS'yi şu şekilde yapılandırabilirsiniz:

LAZY İÇİN

SSH sorununu VonC tarafından açıklanan şekilde düzeltmelisiniz; ancak, taahhütte bulunmak için acele ediyorsanız ve şu anda yeni bir ortak anahtar oluşturmak için araçlara / zamana / bilgiye sahip değilseniz, kökeninizi HTTPS alternatifine ayarlayın:

> https://accountname@bitbucket.org/accountname/reponame.git

TortoiseGit veya komut satırı araçları gibi bir GUI aracı kullanma .

İşte bu alternatif başlangıç ​​URL'sinin belgeleri.

Varsa bir başlangıç ​​noktası eklemek için komut satırı:

git remote add origin https://accountname@bitbucket.org/accountname/reponame.git

Mevcut bir kaynağı değiştirmek için komut satırı:

git remote set-url origin https://accountname@bitbucket.org/accountname/reponame.git

NOT: hesap adınız e-postanız değil.

Global bilgilerinizi de ayarlamak isteyebilirsiniz:

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

Sonra tekrar denemek (tekrar taahhüt etmeye gerek yok)

git push origin master

echo "Host bitbucket.org" >> ~ / .ssh.config, bu son olmamalı "." olmak '/'?
Peter

1
Bazen yukarıda belirtilen her şeyi eklemiş olursunuz, ~/.bashrcancak yine de komutu çalıştırdığınızda ssh-all -lBu hala gösterir No agent Bu durumda bu komutu deneyin ssh-agent /bin/bashveInitializing new SSH agent...
shinesecret

5
StackOverflow
Sambhav Sharma 22:15

1
@JGallardo - Güzel soru! İyi haber hayır. Bunlar bash kabuk komut dosyalarındaki değişkenlerdir - toplu iş dosyalarındaki ortam değişkenlerine benzerler.
Graeme Wicksted

1
Bunun kabul edilen cevap olmaması kalbimi acıtıyor. Harika bir yazı!
ruby_newbie

58

Bu hata, özel anahtarı eklemeyi unuttuysanız da oluşur ssh-agent. Bunu aşağıdakilerle yapın:

ssh-add ~/.ssh/id_rsa

4
Benim durumumdaki yanıt buydu, yeni bir anahtar oluşturduğumda her zaman unutduğum bir şeydi.
amertkara

1
Yukarıdaki
Tony Merritt

benim için çalıştı :) ama zaten yerel dizinde ssh özel anahtar ve bitbucket hesabınıza kayıtlı ortak anahtar olduğundan emin olun
Daniel

26

Yeniden biçimlendirilmiş, muhtemelen genel ve özel ssh anahtarlarınızı (~ / .ssh olarak) sildiğiniz anlamına gelir.

Bunları yeniden oluşturmanız ve genel ssh anahtarınızı " GitBash ile Git için SSH Ayarla " nın ardından " Bitbucket ile SSH protokolünü kullanma " bölümünde belgelendiği gibi BitBucket profilinizde yayınlamanız gerekir .

Hesaplar-> Hesapları Yönet-> SSH Anahtarları:

http://solvedproblems.hydex11.net/_media/solved-problems/crazy-problems/bitbucket_manage_account.png

Sonra:

http://solvedproblems.hydex11.net/_media/solved-problems/crazy-problems/bitbucket_add_ssh.png

" Mercurial / BitBucket'i JetBrains yazılımı ile entegre etme "


8
Sadece buna biraz eklemek için. Hesabınızın SSH Anahtarlarına (Hesaplar-> Hesapları Yönet-> SSH Anahtarları) SSH anahtarını eklediğiniz BitBucket'i (ekran görüntüsünde gösterildiği gibi) kullandığınızdan emin olun. Depo Ayarları aracılığıyla Dağıtım Anahtarı olarak eklenmesi, yalnızca bu anahtarın salt okunur işlemler için kullanılmasına izin verir (taahhütte bulunmaz).
welshk91

@ welshk91 Kabul ediyorum. Daha ayrıntılı resimler eklemek için cevabı değiştirdim.
VonC

1
@VonC - bunu gönderdiğiniz için teşekkürler. Bunu bir Windows makinesinde çalışmak için boşuna çalışıyordum ve bu nihayet hile yaptı. Teşekkürler, Ben
ben18785

21

Uzaktan kumanda komutunu kaldırarak bunu çözdüm:

git remote remove origin

ve sonra ssh yerine https url kullanarak uzaktan eklemeyi denedi

git remote add origin httpsUrl

Github kimlik bilgilerini ister. Kimlik bilgilerini girin ve ardından aşağıdakileri kullanarak git öğesine basmayı deneyin:

git push origin master

1
bu bana yardımcı oldu. benim durumumda doğru cevap bu. teşekkür ederim
binsnoel

Benim için çalışıyor. Kökeni kaldırmadım, yeni bir tane ekledim
shintaroid

Düzgün yanıt için teşekkürler. Bir cazibe gibi çalıştı - tam olarak ne aradığını oldu.
Alexandra

4

Ben de aynı problemi yaşadım. SSH anahtarlarım doğru ayarlanmış. Bu sorunu böyle çözdüm.

Bitbucket'te yeni bir proje oluşturduktan sonra klon kullanın. Terminalde klonlama komutunu girin ve boş projeyi klonlamanız gerekir. Bundan sonra dosyalarınızı bu dizine kopyalayabilir ve taahhütte bulunmaya ve bitbucket'e itmeye başlayabilirsiniz.


1
Ne kadar garip. Bugün OP ile aynı sorunu aldım, ancak bir yeniden yükleme yapmadan veya herhangi bir sistem değişikliği yapmadan anahtarlarım iyiydi. git remote addSüreç sadece bugün işi yoktu - ama .git silme ve daha sonra kullanarak - itme çalışırken ben auth hata var git cloneyerine para cezası çalışır ve benim kaynağını (sadece bir README.md) recopying. Teşekkürler Rafael - Cevabınız olmasa kesinlikle denemeyi düşünmezdim.
kris

Bu çözümün size yardımcı olduğuna sevindim
Rafael

1
Cevabınız için teşekkürler. Sorunu sadece yeni bir dizin oluşturarak ve yeni dizinde klonlayarak çözebildim. mkdir /tmp/JUNK; cd /tmp/JUNK; git clone ...; cd ..; rm -rf JUNK
Kırmızı Kriket


2

Birisine yaşadığım karışıklığı kurtarabilecek iki küçük açıklama:

1 - Bağlantı URL'leri HTTPS ve SSH için farklılık gösterir

Https ile bağlanırken,

https://your_account_name@bitbucket.org/owner-account/repo-name.git

ancak SSH ile bağlanırken hesap adı her zaman "git" olur

ssh://git@bitbucket.org/owner-account/repo-name.git

Hesap adınız önde SSH'ye bağlanmaya çalışmak, orijinal posterin aldığı hataya neden olacaktır. Git @ 'e bağlanan testi bu şekilde yapabilir, ardından yanlışlıkla kullanıcı adınızı deneyin ve bir hata görün.

2 - Takım hesapları aracılığıyla SSH Anahtarları 2017'de kullanımdan kaldırılacak

Ekip hesaplarında SSH anahtarları ayarlıyorsanız, bunları kişisel hesaplara değiştirmenizi öneririz. E önlemek için yararlı bir ipucu


1

SourceTree kullanıyorsanız (2.4.1 kullanıyorum), bir SSH anahtarı oluşturmak ve bunu Bitbucket ayarlarıma eklemek için daha basit bir yol buldum. Bu benim için problemi çözdü.

  1. SourceTree'de Tercihler'e gidin.
  2. Hesaplar sekmesine gidin ve hesabınızı seçin.
  3. Bir SSH anahtarı oluşturmak ve panoya kopyalamak için bir seçenek olmalıdır.
  4. Bunu kopyaladıktan sonra, tarayıcınızdaki Bitbucket'e gidin. [Avatar] -> Bitbucket ayarlarına gidin.
  5. SSH tuşlarına gidin.
  6. Anahtar ekle'yi tıklayın
  7. Kopyaladığınız anahtara yapıştırın.

Bitbucket'ten hesabıma bir SSH anahtarının eklendiğine dair bir onay e-postası aldım.

Referans olarak, macOS'ta Terminal'i kullanarak, cihazınız için oluşturulan tuşları görmek için aşağıdaki komutu kullanabilirsiniz. Oluşturduğunuz anahtar burada depolanır.

ls -la ~/.ssh

Diğerlerinin de belirttiği gibi, bu belge bana yardımcı oldu: Bitbucket Cloud ile SSH protokolünü kullanma


1

Ssh'yi Atlassian eğitiminde olduğu gibi yapın ve özel anahtarın depoya değil profile yapıştırıldığından emin olun :)


Lütfen belirtilen bir bağlantı ekleyebilir misiniz Atlassian tutorial? Anahtarı profile yapıştırma adımları nelerdir ve depoya yapıştırılıp yapıştırılmadığını nasıl bilebilirim?
EmmanuelB

Tam burada. Vaka kombinasyonunuz için en iyi seçimi seçin! confluence.atlassian.com/bitbucket/…
Hector

0

Bir depo için de aynı hatayı aldım - birdenbire, diğerlerinin hepsi vardı ve taahhütleri zorlamaya çalışırken hala iyi çalışıyor. Sorun SSH anahtarında olduğu ortaya çıktı (önceki yorumlardan zaten bildiğiniz gibi) - bitbucket'e gidin ve View Profiletıklayın Manage Account.

Sol tarafta tıklayın ve SSH Keysardından sisteminizde bulunanı ~ / .ssh / dizin altına ekleyin.

Henüz bir tane oluşturmadıysanız, yayınlardan birindeki talimatları kullanın, ancak varsayılan id_dsa.pub dosyasını veya özel adlandırılmış dosyayı kullandığınızdan emin olun; daha sonra -i, anahtarın yolunu içeren seçeneği gerektirir bağlanmak yani

ssh -i ~/.ssh/customkeyname username@ip_address

Yerel anahtarınızı bitbucket'teki hesabınıza ekledikten sonra, deponuzla etkileşime girmeye başlayabilirsiniz.


0

Benim için en uygun çözümün daha küçük parçalara itilmesi olduğunu fark ettim.

ve büyük ekran görüntüsü dosyalarını (10mb +) işlemden kaldırma

Güvenlik, bin dosyalarının sınırları hakkında daha fazla bir sorun değildi


OP tarafından belirtilen yukarıdaki hatayı alıyorsunuz ve bu bir kimlik doğrulama / güvenlik sorunu değil miydi? Taahhüdünüzün büyüklüğü müydü?
JohnZaj

İşte böyle oldu
Harry Bosh

0

Bu hata, depo bulunmadığında da görüntülenir. Repo adının bir tire eksik olduğunu görene kadar tüm cevapları denedim


0

Hatalar için:

[hata] havuz erişimi reddedildi. bir dağıtım anahtarı aracılığıyla erişim salt okunurdur. ölümcül: Uzak depodan okunamadı. Lütfen doğru erişim haklarına sahip olduğunuzdan ve havuzun var olduğundan emin olun.

[hata] ölümcül: Uzak depodan okunamadı.

[hata] ölümcül: 'https' için uzaktan yardımcı bulunamadı

Bu adımları izleyerek çözdüm:

İlk önce bu bağımlılıkları yükleyin:

$ yum install expat expat-devel openssl openssl-devel

Sonra git'i kaldırın:

$ yum remove git git-all

Şimdi Git'i son sürümde derleyin ve yükleyin, bu durumda:

$ wget https://github.com/git/git/archive/v2.13.0.tar.gz
$ tar zxf v.2.13.0.tar.gz
$ cd git-2.13.0/

Sonra yapılandırmak için:

$ make configure
$ ./configure --with-expat --with-openssl

Ve son olarak şu şekilde yükleyin:

$ make 
$ make install install-doc install-html install-info

işte bu, şimdi deponuzu https ile yapılandırın:

$ git remote add origin https://github.com/*user*/*repo*.git
# Verify new remote
$ git remote -v

uzak sunucunuzda bir ssh anahtarı yapılandırdıysanız, silmeniz gerekir.


0

Bu hatayı aldım

Uzak ana bilgisayar tarafından bitbucket.org bağlantısı kapatıldı. ölümcül: Uzak depodan okunamadı. Lütfen doğru erişim haklarına sahip olduğunuzdan emin olun.

Sonra denedim

git config --global user.email "siz@example.com"

tırnak işaretleri olmadan çalıştı.


0

Git komut satırı pageant oluşturulan anahtarları (Windows 10) fantezi değildi bulundu.

Cevabımı Serverfault üzerinde görün


0

MacOS kullanıyorum ve bitbucket benim ortak anahtar kurulum vardı rağmen ben itmeye çalıştım bir dahaki sefere ben var

depo erişimi reddedildi.

ölümcül: Uzak depodan okunamadı.

Lütfen doğru erişim haklarına sahip olduğunuzdan ve havuzun var olduğundan emin olun.

Ne yapmam gerekiyordu Adım 2. Bitbucket SSH tuşları kurulum kılavuzunda ve özellikle 3. adımda açıklandığı gibi ssh-ajan anahtarı ekleyin :

(yalnızca macOS) Bilgisayarınızın her yeniden başladığında parolanızı hatırlaması için ~ / .ssh / config dosyasını açın ve şu satırları dosyaya ekleyin:

Ana bilgisayar *
UseKeychain evet

Umarım aynı sorunu olan bir mac kullanıcısına yardımcı olur.



0

Bu sorunu yaşadım ve deli olduğumu düşündüm. 20 yıldır SSH kullanıyorum. ve 2012'den beri SSH üzerinden git ... ama neden ev bilgisayarımda bitbucket veri havuzumu getiremedim?

Peki, iki bitbucket hesabım var ve aracımın içine 4 SSH anahtarı yüklendi. .ssh / config dosyam doğru anahtarı kullanacak şekilde yapılandırılmış olsa bile. ssh bağlantıyı başlatırken, aracıya yüklenmek için bunları kullanıyordu. bu yüzden kişisel bitbucket hesabımda oturum açıyordum.

daha sonra repo getirilmeye çalışılırken Yasak hata alıyorum. mantıklı.

Anahtarı aracıdan kaldırdım

ssh-add -d ~/.ssh/personal_rsa

sonra depoları getirebilirim.

... Daha sonra öğrendim ki, sadece belirtilen kimliği kullanmaya zorlayabilirim

 Host bitbucket.org-user2
     HostName bitbucket.org
     User git
     IdentityFile ~/.ssh/user2
     IdentitiesOnly yes

O son seçeneği bilmiyordum IdentitiesOnly

bitbucket belgelerinin kendisinden

https://blog.developer.atlassian.com/different-ssh-keys-multiple-bitbucket-accounts/


-1

Sadece dene

git remote add origin <HTTP URL>

1
Biz yazarak kullanıcı adı / biz getirme şifre her şey / bitbucket / github / etc / içine itme sevmiyorum
Mathieu J.
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.