Git 'Permission Denied (publickey)' Hatası ve Çözümü: Adım Adım Kılavuz

Git 'Permission Denied (publickey)' hatasının ne anlama geldiğini ve nasıl çözüleceğini öğrenin. Adım adım çözüm kılavuzuyla bu hatadan kolayca kurtulabilirsiniz.

BFS

Git kullanırken, geliştiricilerin sıklıkla karşılaştığı hatalardan biri “Permission Denied (publickey)” hatasıdır. Bu hata, genellikle SSH anahtarlarının doğru şekilde yapılandırılmadığı veya GitHub gibi platformlarla uyumsuz olduğu durumlarda meydana gelir. Peki, bu hata ne anlama geliyor ve nasıl çözülür? Gelin, bu sorunun çözümüne adım adım bir yolculuk yapalım.

‘Permission Denied (publickey)’ Hatası Nedir?



Git ile bir uzak depoya (remote repository) erişmeye çalıştığınızda, bu hatayı alırsınız. Git, belirli bir sunucuyla bağlantı kurmaya çalışırken, SSH anahtarınızı doğrulamaya çalışır. Eğer doğrulama başarısız olursa, Git “Permission Denied (publickey)” hatasını verir. Bu, GitHub, GitLab veya diğer Git servis sağlayıcıları ile bağlantı kurmaya çalıştığınızda sıklıkla karşılaşılan bir sorundur.

Eğer Git, SSH anahtarınızı doğru şekilde kullanamıyorsa, size bu hatayı verecektir. Ama korkmayın! Çözüm çok basit.

Adım Adım Çözüm: ‘Permission Denied (publickey)’ Hatasını Nasıl Giderirsiniz?



Adım 1: SSH Anahtarınızı Kontrol Edin

İlk olarak, bilgisayarınızda bir SSH anahtarınız olup olmadığını kontrol etmeniz gerekir. Bunu terminalde şu komutla yapabilirsiniz:

ls -al ~/.ssh


Eğer bu komut, `.ssh` klasöründe herhangi bir anahtar göstermiyorsa (örneğin, `id_rsa` veya `id_ed25519`), yeni bir SSH anahtarı oluşturmanız gerekir. Anahtar oluşturmak için şu komutu kullanabilirsiniz:

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


Bu komut, bilgisayarınızda yeni bir SSH anahtarı oluşturacak ve bunu güvenli bir şekilde saklamanızı sağlayacaktır.

Adım 2: SSH Anahtarınızı GitHub’a Ekleyin

SSH anahtarınızı oluşturduktan sonra, onu GitHub hesabınıza eklemeniz gerekir. Bunu yapmak için şu adımları izleyin:

1. `id_rsa.pub` dosyanızın içeriğini terminalde şu komutla görüntüleyin:

cat ~/.ssh/id_rsa.pub


2. Bu komutu çalıştırdıktan sonra, ekranınıza uzun bir karakter dizisi çıkacak. Bu karakter dizisini kopyalayın.

3. GitHub hesabınıza giriş yapın ve sağ üst köşede bulunan profil simgesine tıklayın. “Settings” (Ayarlar) seçeneğine gidin.

4. Sol menüden “SSH and GPG keys” bölümüne tıklayın ve “New SSH key” butonuna basın.

5. Açılan alana, kopyaladığınız SSH anahtarını yapıştırın ve kaydedin.

Adım 3: SSH Bağlantısını Test Edin

Anahtarınızı GitHub’a ekledikten sonra, bağlantınızın doğru çalışıp çalışmadığını test edebilirsiniz. Terminalde şu komutu girin:

ssh -T git@github.com


Eğer her şey doğruysa, şu şekilde bir mesaj alırsınız:

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


Bu mesaj, SSH anahtarınızın başarıyla doğrulandığını ve artık GitHub’a bağlanabileceğinizi gösterir.

Adım 4: Git Remote URL’sini Kontrol Edin

Bir başka olasılık da, uzak depo URL’nizin yanlış olmasıdır. GitHub, HTTPS ve SSH olmak üzere iki farklı bağlantı türü sunar. Eğer HTTPS bağlantısı kullanıyorsanız ve SSH anahtarıyla bağlanmak istiyorsanız, uzak depo URL’sini SSH formatına değiştirebilirsiniz.

Bunu yapmak için şu komutu kullanın:

git remote set-url origin git@github.com:username/repository.git


Bu komut, GitHub deponuzun URL’sini SSH formatına günceller.

Sonuç: Artık Git’iniz Sorunsuz Çalışıyor!



Bu adımları takip ederek, Git’inizde karşılaştığınız ‘Permission Denied (publickey)’ hatasını çözebilirsiniz. Şimdi, GitHub üzerindeki projelerinizle güvenli bir şekilde çalışabilir, kodunuzu sorunsuz bir şekilde gönderebilir ve alabilirsiniz.

Git ve SSH bağlantılarının biraz kafa karıştırıcı olabileceğini biliyoruz, ancak doğru yapılandırmayla işler oldukça basit hale gelir. Bu basit adımlarla, projelerinizi hızlıca yönetebilirsiniz!

İlgili Yazılar

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

Modern Yazılım Geliştirme Süreçlerinde Yapay Zeka ve Otomasyonun Rolü: 2025’te Yeni Başlangıçlar

Yazılım geliştirme dünyası hızla evriliyor. 2025 yılına adım attığımızda, bu süreçte yapay zeka ve otomasyonun rolü hiç olmadığı kadar önemli hale geldi. Geçmişte yazılım geliştirme yalnızca kod yazmak ve sistemleri test etmekle sınırlıydı. Ancak bugünün...

Yazılım Geliştiriciler İçin Verimli Çalışma Alanı Oluşturmanın İpuçları: En İyi Araçlar ve Yöntemler

Verimli Bir Çalışma Alanı Neden Önemlidir?Yazılım geliştirici olmanın zorluklarından biri de sürekli odaklanmış ve üretken olabilmektir. Bir geliştirici olarak, işlerinizin çoğunu bilgisayar başında geçirirsiniz ve bu süre zarfında verimli bir çalışma...

ASP.NET Core 500 Internal Server Error: Sebepleri ve Çözümleri

Bir web geliştiricisi olarak, karşılaştığınız en zorlayıcı hatalardan biri şüphesiz "500 Internal Server Error"dır. Bu hata, web uygulamanızda her şeyin yolunda gittiğini düşündüğünüz bir anda karşınıza çıkabilir ve tüm projeyi durdurabilir. Ancak merak...