Mengatasi Pesan Error GitHub Terkait Otentikasi - wongganteng10/tutorial GitHub Wiki

Mengatasi Pesan Error GitHub Terkait Otentikasi

Pesan error yang muncul menunjukkan bahwa GitHub telah menghapus dukungan untuk otentikasi menggunakan password saat melakukan push melalui HTTPS. Sebagai gantinya, GitHub mendorong pengguna untuk menggunakan Personal Access Tokens (PAT) atau SSH untuk autentikasi. Berikut adalah langkah-langkah untuk menyelesaikan masalah ini:

Pilihan 1: Menggunakan Personal Access Token (PAT)

  1. Buat Personal Access Token:

    • Masuk ke akun GitHub kamu.
    • Buka Settings.
    • Di sidebar, klik Developer settings.
    • Klik Personal access tokens > Tokens (classic).
    • Klik tombol Generate new token.
    • Beri nama pada token, pilih scope yang diinginkan (minimal centang repo untuk akses penuh ke repositori), lalu klik Generate token.
    • Salin token yang dihasilkan (ini hanya ditampilkan sekali).
  2. Gunakan Personal Access Token saat Melakukan Push:

    Ketika kamu melakukan push dan diminta untuk memasukkan username dan password, masukkan:

    • Username: nama pengguna GitHub kamu (misalnya, wongganteng10).
    • Password: gunakan Personal Access Token yang baru saja kamu buat sebagai password.

Pilihan 2: Menggunakan SSH

Jika kamu lebih suka menggunakan SSH daripada HTTPS, kamu bisa mengikuti langkah-langkah berikut untuk mengkonfigurasi SSH:

  1. Buat SSH Key (Jika Belum Ada):

    Jika kamu belum memiliki SSH key, buat SSH key baru dengan perintah berikut:

    ssh-keygen -t rsa -b 4096 -C "[email protected]"
    

    Tekan Enter untuk menggunakan lokasi default dan masukkan passphrase jika diinginkan.

  2. Tambahkan SSH Key ke SSH Agent:

    Jalankan perintah berikut untuk memastikan agent SSH berjalan:

    eval "$(ssh-agent -s)"
    

    Tambahkan SSH key ke agent:

    ssh-add ~/.ssh/id_rsa
    
  3. Tambahkan SSH Key ke GitHub:

    Salin public SSH key ke clipboard dengan perintah berikut:

    cat ~/.ssh/id_rsa.pub
    
    • Buka GitHub.
    • Masuk ke Settings > SSH and GPG keys > New SSH key.
    • Tempelkan SSH key yang sudah disalin dan beri nama pada key tersebut.
    • Klik Add SSH key.
  4. Ubah URL Remote ke SSH:

    Ubah URL remote repository agar menggunakan SSH alih-alih HTTPS:

    git remote set-url origin [email protected]:wongganteng10/nama-repository.git
    
  5. Push ke Remote:

    Setelah mengkonfigurasi SSH, coba lagi untuk melakukan push:

    git push origin main
    

Kesimpulan

Menggunakan Personal Access Token atau SSH adalah cara yang tepat untuk mengautentikasi ke GitHub setelah penghapusan dukungan untuk password. Pilih metode yang paling nyaman untukmu. Jika kamu memerlukan bantuan lebih lanjut, silakan beri tahu!




Berikut adalah wiki yang dapat digunakan untuk mengatasi masalah error Permission denied (publickey) saat menggunakan GitHub:


Mengatasi Pesan Error Permission denied (publickey) pada GitHub

Pesan error ini menunjukkan bahwa Git tidak bisa terhubung ke repository GitHub karena masalah otentikasi. Berikut ini adalah langkah-langkah untuk mengatasi masalah tersebut.

1. Pastikan SSH Key Sudah Terpasang

Jika kamu ingin menggunakan SSH, pastikan kamu sudah membuat dan menambahkan SSH key ke akun GitHub.

a. Cek Apakah Kamu Sudah Punya SSH Key

Jalankan perintah ini untuk memeriksa apakah kamu sudah memiliki SSH key:

ls -al ~/.ssh

Jika ada file seperti id_rsa dan id_rsa.pub, berarti kamu sudah memiliki SSH key. Jika belum ada, kamu perlu membuatnya.

b. Buat SSH Key (Jika Belum Ada)

Jika belum punya, buat SSH key dengan menjalankan perintah ini:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Tekan Enter untuk menyimpan file di lokasi default (~/.ssh/id_rsa).

c. Tambahkan SSH Key ke Agent SSH

Jalankan perintah berikut untuk memastikan agent SSH berjalan:

eval "$(ssh-agent -s)"

Kemudian tambahkan SSH key ke agent:

ssh-add ~/.ssh/id_rsa

d. Tambahkan SSH Key ke Akun GitHub

Salin konten dari SSH public key (id_rsa.pub) dan tambahkan ke GitHub:

cat ~/.ssh/id_rsa.pub

Salin output dari perintah tersebut, lalu tambahkan ke GitHub melalui:

  • GitHub > Settings > SSH and GPG Keys > New SSH Key

2. Verifikasi Koneksi ke GitHub

Setelah SSH key ditambahkan, jalankan perintah ini untuk memastikan koneksi ke GitHub berfungsi:

ssh -T [email protected]

Jika semuanya berfungsi, akan muncul pesan seperti:

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

3. Perbaiki URL Remote

Jika sebelumnya kamu menambahkan repository menggunakan HTTPS, kamu bisa menggantinya ke SSH.

Cek URL remote repository:

git remote -v

Jika masih menggunakan HTTPS, ubah ke SSH dengan perintah berikut:

git remote set-url origin [email protected]:wongganteng10/nama-repository.git

4. Push Ulang

Setelah konfigurasi SSH berhasil, kamu bisa mencoba melakukan push ulang:

git push origin master --force

Ini akan memaksa push ke branch master menggunakan koneksi SSH.


Menghapus SSH Key yang Telah Dibuat

Jika kamu ingin menghapus SSH key yang telah dibuat menggunakan ssh-keygen, ikuti langkah-langkah berikut:

1. Hapus File SSH Key dari Sistem

SSH key disimpan di folder ~/.ssh secara default. Kamu bisa menghapus file tersebut dengan perintah berikut:

rm -f ~/.ssh/id_rsa ~/.ssh/id_rsa.pub

Perintah ini akan menghapus file private key (id_rsa) dan public key (id_rsa.pub).

2. Hapus SSH Key dari SSH Agent (Jika Diperlukan)

Jika kamu sudah menambahkan SSH key ke SSH agent, kamu bisa menghapusnya dengan perintah berikut:

ssh-add -d ~/.ssh/id_rsa

3. Hapus SSH Key dari GitHub

Jika kamu sudah menambahkan SSH key tersebut ke akun GitHub, kamu juga perlu menghapusnya dari sana:

  • Buka GitHub.
  • Masuk ke Settings > SSH and GPG keys.
  • Temukan SSH key yang ingin dihapus dan klik tombol Delete.

Setelah langkah-langkah ini, SSH key akan terhapus dari sistem dan GitHub.


Dengan mengikuti langkah-langkah di atas, kamu seharusnya bisa mengatasi masalah otentikasi Permission denied (publickey) saat menggunakan GitHub.