Git 'Permission Denied (publickey)' Hatası ve Çözümü

Git 'Permission Denied (publickey)' Hatası ve Çözümü

Git üzerinden 'Permission Denied (publickey)' hatası alıyorsanız, bu yazıda adım adım nasıl çözebileceğinizi öğrenebilirsiniz. SSH anahtarlarını nasıl oluşturacağınızı ve GitHub'a nasıl ekleyeceğinizi anlatıyoruz.

Al_Yapay_Zeka

Git kullanırken karşılaştığınız hatalardan biri olan 'Permission Denied (publickey)' hatası, başlangıçta kafa karıştırıcı olabilir. Ancak bu hatanın çözümü aslında oldukça basittir. Git üzerinden bir projeyi çekmeye (pull) ya da göndermeye (push) çalışırken bu hata ile karşılaşıyorsanız, endişelenmenize gerek yok. Gelin, bu hatanın ne anlama geldiğini ve nasıl çözebileceğinizi adım adım keşfedelim.

Git 'Permission Denied (publickey)' Hatası Nedir?



Bu hata, Git'in size SSH anahtarınızı doğrularken bir problem yaşadığını gösterir. Git, genellikle *SSH anahtarları* kullanarak uzak sunucularda (örneğin GitHub, GitLab veya Bitbucket) bağlantı kurar. Eğer SSH anahtarınız doğru şekilde ayarlanmamışsa veya Git bu anahtarı tanıyamıyorsa, 'Permission Denied (publickey)' hatasını alırsınız.

Ama merak etmeyin! Sorunun kaynağını bulmak ve çözümünü uygulamak birkaç dakika sürecek.

1. SSH Anahtarınızı Kontrol Edin



İlk adım, bilgisayarınızda bir SSH anahtarınızın olup olmadığını kontrol etmektir. Eğer anahtarınız yoksa, yeni bir tane oluşturmanız gerekecek.

SSH anahtarınızı kontrol etmek için terminali açın ve şu komutu girin:

ls -al ~/.ssh


Bu komut, bilgisayarınızda `.ssh` klasöründe bulunan dosyaları listeleyecektir. Eğer bu klasörde `id_rsa` (özel anahtar) ve `id_rsa.pub` (genel anahtar) dosyalarını görüyorsanız, anahtarlarınız zaten mevcut demektir. Eğer bu dosyaları görmüyorsanız, bir SSH anahtarı oluşturmanız gerekecek.

2. SSH Anahtarı Oluşturun



Eğer bilgisayarınızda SSH anahtarınız yoksa, yeni bir anahtar oluşturmanız gerekecek. Terminalde aşağıdaki komutu girin:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"


Burada `your_email@example.com` kısmını GitHub hesabınızla ilişkilendirdiğiniz e-posta adresi ile değiştirin. Bu komut, sizi anahtar dosyasının kaydedileceği bir yer seçmeye yönlendirecektir. Varsayılan yolu kabul etmek için *Enter* tuşuna basabilirsiniz.

3. SSH Anahtarınızı GitHub'a Ekleyin



Anahtarınızı başarıyla oluşturduktan sonra, genel anahtarınızı GitHub hesabınıza eklemeniz gerekecek. İlk olarak, genel anahtarınızı panoya kopyalamak için şu komutu kullanın:

cat ~/.ssh/id_rsa.pub


Bu komut, `id_rsa.pub` dosyanızdaki anahtarı terminale yazdıracaktır. Bu anahtarı panoya kopyalayın.

Şimdi GitHub'a gidin ve sağ üst köşedeki profil resminize tıklayın. Ardından Settings (Ayarlar) kısmına girin, sol menüden SSH and GPG keys sekmesine tıklayın ve New SSH key butonuna basın. Açılan pencerede başlık kısmına bir isim verin (örneğin, "My Laptop SSH Key") ve kopyaladığınız anahtarı Key kısmına yapıştırın. Son olarak Add SSH Key butonuna tıklayın.

4. SSH Bağlantısını Test Edin



Artık her şey hazır! GitHub ile olan bağlantınızı test etmek için aşağıdaki komutu terminale girin:

ssh -T git@github.com


Eğer her şey doğru şekilde yapılandırıldıysa, aşağıdaki gibi bir mesaj alacaksınız:

Hi your_username! You've successfully authenticated, but GitHub does not provide shell access.


Bu, SSH bağlantınızın başarıyla kurulduğu anlamına gelir.

5. Git İstemcisini SSH ile Kullanmak



Eğer GitHub'a bağlanmak için HTTPS yerine SSH kullanmak istiyorsanız, mevcut uzak (remote) bağlantınızı değiştirebilirsiniz. Projenizin kök dizininde şu komutu girerek uzak bağlantıyı SSH olarak değiştirebilirsiniz:

git remote set-url origin git@github.com:your_username/your_repository.git


Bu komutla GitHub bağlantınız HTTPS yerine SSH üzerinden yapılacaktır. Artık Git işlemlerinizi yaparken 'Permission Denied (publickey)' hatasını almayacaksınız!

Sonuç



Git üzerinden karşılaştığınız 'Permission Denied (publickey)' hatasını çözmek için SSH anahtarınızı doğru şekilde yapılandırmanız yeterlidir. Anahtarınızı oluşturduktan ve GitHub'a ekledikten sonra, Git işlemlerinizi sorunsuz bir şekilde gerçekleştirebilirsiniz. Unutmayın, SSH anahtarları güvenli bağlantılar kurmanıza yardımcı olur ve bu tür hataları engeller.

Umarım bu rehber, Git ile çalışırken karşılaştığınız sorunları çözmenize yardımcı olur!

İlgili Yazılar

Benzer konularda diğer yazılarımız

Ansible 'SSH Authentication Failed' Hatası ve Çözümü: Adım Adım Çözüm Rehberi

Günümüzün hızlı gelişen IT dünyasında, otomasyon yazılımları her zamankinden daha önemli bir hale geldi. Herhangi bir yönetici için Ansible gibi güçlü bir aracın kullanılması, hem zamandan tasarruf sağlar hem de manuel işlemleri ortadan kaldırır. Ancak...

KVM 'Permission Denied' Hatası ve Çözümü: Hızlı Bir Çözüm Rehberi

KVM (Kernel-based Virtual Machine), Linux işletim sistemlerinde sanallaştırma yapabilmek için oldukça güçlü bir araçtır. Ancak zaman zaman kullanıcılar, özellikle KVM ile sanal makineler oluştururken, "Permission Denied" hatasıyla karşılaşabiliyor. Eğer...

Windows'ta Git Kurulumu ve Temel Komutlar: Adım Adım Kılavuz

Git, yazılım dünyasında olmazsa olmaz bir araçtır. Her geliştiricinin bilgisayarında olması gereken bu araç, kodları yönetmek, takım çalışması yapmak ve projelerinizi düzenli bir şekilde tutmak için kullanılır. Eğer Git’i bilgisayarınıza kurmayı düşünüyorsanız...

Fail2ban ile Linux'ta Güvenlik Artırma: Adım Adım Rehber

Linux sistemlerinizde güvenlik açıklarını kapatmak ve sunucularınızı dış tehditlere karşı korumak istiyorsanız, Fail2ban tam da ihtiyacınız olan araç olabilir. Bugün, Fail2ban’ı nasıl kurabileceğinizi, nasıl yapılandırabileceğinizi ve sisteminizin güvenliğini...

Git Nasıl Kurulur ve Yapılandırılır? Kolay Adımlarla Başarıya Ulaşın

Git Nedir ve Neden Önemlidir?Hayatınıza Git'i dahil etmek, yazılım geliştirme yolculuğunuzda yapabileceğiniz en iyi şeylerden biri olacaktır. Peki, Git nedir? Kısaca, Git, dosyalarınızı yönetmenize ve her değişiklikte onları takip etmenize olanak tanıyan...

Git 'Detached HEAD' Hatası ve Çözümü: Git'te Takılı Kaldığında Ne Yapmalısınız?

Git dünyasında gezinti yapmak bazen oldukça karmaşık bir hal alabilir. Özellikle de "Detached HEAD" hatasıyla karşılaştığınızda işler biraz kafa karıştırıcı olabilir. Git, yazılım geliştiricilerin favori aracıdır, ancak bazen kontrolü kaybetmiş gibi hissedebilirsiniz....