2015-07-27 25 views
5

Oldukça ilgili bir bilgi parçası, bitbucket için ayarlanmış bir özel ssh yapılandırmam var. (Ben aktif olarak yapılandırma dosyasında diğer girdileri kullanın) ssh söz konusu olduğundaBitbucket ssh genel anahtarı reddediliyor, ancak ssh testi hiçbir sorun olmadan bağlanıyor

[[email protected]]$ cat ~/.ssh/config 
Host bitbucket 
    Hostname  bitbucket.org 
    IdentityFile /home/ivanna/.ssh/id_rsa_bitbucket 
    IdentitiesOnly yes 

bu dosyada izinleri kadarıyla kesinlikle doğrudur: my '.ssh/config' dosyasında aşağıdaki var. Ben git uzaktan kökenli eklendi Şimdi ben yerine bitbucket.org ait bitbucket kullandı:

git remote add origin bitbucket:ivanna/my-repo.git 

ama aşağıdaki hatayı alıyorum itmek çalıştığınızda: ben değil gibi

Permission denied (publickey). 
fatal: Could not read from remote repository. 

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

Öyle görünüyor Herkese açık anahtarımı falan ekleyeyim, değil mi? Ama kesinlikle yaptım. Ve daha fazla bilgi ararken, bu sayfayı hatayla ilgili olarak bulabilirsiniz (https://confluence.atlassian.com/pages/viewpage.action?pageId=302811860). Anahtarını kontrol etmek için ne yaptıklarını söylediğimde:

[[email protected]]$ ssh -T [email protected] 
logged in as ivanna. 

You can use git or hg to connect to Bitbucket. Shell access is disabled. 

Görünüşe göre, iyi görünüyor. Öyleyse neden işi zorlamıyor? Yukarıdaki bağlantı, projenin kendisi üzerinde bir izin sorunu olabileceğinden bahseder, ancak izinler insanların önerdiği şekilde belirledim ve hiçbir şey yapmadı. Neler olduğunu bilen var mı?

cevap

6
ssh -T [email protected] 

Sen [email protected] kullanın, ancak uzak içinde Git'e eklediğiniz URL, bir kullanıcı adı belirtmezsiniz. Yapılandırma ayrıca bir tane içermediğinden, Git, hangi kullanıcı adıyla giriş yapılacağını bilmez.

Değişim bu URL: Alternatif

git remote add origin [email protected]:ivanna/my-repo.git 

, sen SSH yapılandırma için kullanıcı ekleyebilirsiniz: o budala değil kullanıyor

Host bitbucket 
    Hostname  bitbucket.org 
    User   git 
    IdentityFile /home/ivanna/.ssh/id_rsa_bitbucket 
    IdentitiesOnly yes 
+0

Teşekkür ederim, bu utanç verici oldu. – Ivanna

3

Bunu yaparsanız: Değişikliklerin bir kullanıcı adı dışında bir şey olarak bağlanmak için gereken git söylemedim

git remote add origin bitbucket:ivanna/my-repo.git 

. Bu gibi .ssh/config dosyada yapabilirsiniz:

Host bitbucket 
    User git 
    Hostname  bitbucket.org 
    IdentityFile /home/ivanna/.ssh/id_rsa_bitbucket 
    IdentitiesOnly yes 

Ya da bu gibi git remote add komut satırında: SSH üzerinden giriş yaparken

git remote add origin [email protected]:ivanna/my-repo.git 
+0

Eh, 'git @' bulunuyor 'hg' . – Will

+0

Eğer gidip soruyu okursanız (wb/bitbucket'ten çıktı) ya işe yarayacaksınız. OP, soruda 'hg @' kullandığı için, ona bağlı kaldım. Katılıyorum katılıyorum. Ben sadece cevabı güncelleyeceğim. – larsks

+0

Ah, anlıyorum. Netleştirdiğiniz için teşekkürler! – Will