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.

BFS

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

GitHub Actions Nasıl Kullanılır?

GitHub Actions, yazılım geliştirme dünyasında devrim yaratacak kadar güçlü bir araçtır. Hızla büyüyen yazılım projelerinde, her değişiklik yapıldığında belirli görevlerin otomatik olarak çalıştırılması hayati öneme sahiptir. GitHub Actions, tam da bunu...

Git Merge Conflict Hatası ve Çözümü: Başarısız Birleştirme ile Baş Etmek

Bir gün, büyük bir yazılım projesinde çalışırken, tek bir şeyin projeyi felç etmesine neden olabileceğini fark ettim: Merge Conflict. Git ile çalışıyordum ve değişikliklerimi main branch ile birleştirirken, her şeyin bir anda ters gitmesi beni tam anlamıyla...

Windows'ta Git Kurulumu ve Temel Komutlarla Tanışın

Git, yazılım dünyasının olmazsa olmaz araçlarından biri haline geldi. Eğer yazılım geliştirme dünyasına adım atmayı planlıyorsanız, Git'i kullanmak size büyük kolaylık sağlayacaktır. Peki, Windows işletim sisteminde Git'i nasıl kurar ve kullanmaya başlarsınız?...