Menggunakan SSH untuk Git-Github pada Windows

Golcha Fun
4 min readJan 3, 2022

--

Post ini merupakan reminder untuk saya sendiri tentang cara menggunakan SSH untuk git & github di laptop yang menggunakan Windows. SSH memungkinkan kita tidak memasukkan username/token saat push. Untuk cara yang lebih jelas, bisa dilihat pada link sumber berikut:

Asumsi

Belum ada private & public key yang di-generate ketika cek ssh pakai command “ls -al ~/.ssh” (biasanya key ini tersimpan di folder C:\Users\<nama_user>\.ssh)

Langkah 0

Jalankan git bash. Lakukan beberapa langkah di bawah ini pada git bash. Bukan di command prompt biasa ya..

Langkah 1

Generate SSH key dengan command:

ssh-keygen -t ed25519 -C "your_email@example.com"

Ubah nama email dari “your_email@example.com” sesuai akun github masing-masing. Setelah memberikan command ini, ada 3 input yang diberikan:

  1. Nama file penyimpanan (saya kosongkan)
  2. Passphrase (saya isi sesuatu)
  3. Retype passphrase (isi yang sama dengan sebelumnya)

Setelahnya, akan terbentuk key di lokasi penyimpanan yang sudah diberitahukan oleh command sebelumnya (cek gambar, garis berwarna merah). Ada 2 file yang terbentuk. Untuk kasus di atas, file yang terbentuk bernama “id_ed25519” yang merupakan private key dan “id_ed25519.pub” (public key).

Langkah 2

Start ssh-agent pada background. Melalui agent, kita dapat menambahkan key yang sudah di-generate. Command yang diberikan adalah:

eval "$(ssh-agent -s)"

Langkah 3

Tambahkan SSH private key ke ssh-agent dengan command:

ssh-add ~/.ssh/id_ed25519

Silahkan sesuai dengan nama file private key masing-masing. Ada sebuah input yang diberikan pada tahap ini, yaitu passphrase yang sebelumnya diberikan saat generate key di langkah 1.

Langkah 4

Tambahkan public key ke akun github. Login ke akun github, pilih “Setting” → pilih menu (di sebelah kiri) → “SSH and GPG keys”. Berikutnya, klik button “New SSH key”.

Masukkan informasi title (boleh apa saja, contoh Laptop Asus/Windows Asus/dll). Sedangkan untuk key, tambahkan isi file dari public key (bisa dibuka dengan notepad). File public key bisa dilihat pada langkah 1 sebelumnya (file yang berekstensi pub di folder .ssh). Jika sudah selesai, klik “Add SSH key”.

Langkah 5

Test SSH key dengan command:

ssh -T git.github.com

Akan ada pemberitahuan authenticity dari host tidak dapat dibangun. Bisa kasih konfirmasi “yes” di sini. Kalau sudah muncul tulisan “Hi <username github> You’ve successfully … ” artinya, beres.

Langkah 6

Langkah ini optional, tapi bisa dicek dengan memasukkan clone via SSL, dan lakukan push (pastikan tidak ada request buat memasukkan password).

Pertama, boleh buat repo asal kalau tidak mau merusak repo yang udah ada. Pilih clone dengan “SSH”.

Otak-atik isi filenya (contohnya ubah Readme.MD). Lalu lakukan commit & push. Saat operasi push dilakukan, dan akan diminta passphrase. Kalau OK, push akan berhasil dilakukan.

Catatan

Kalau punya akun github yang lain, bisa lakukan kembali mulai dari langkah pertama. Hal yang perlu diperhatikan, 1 public key berlaku untuk 1 akun github (ini.. cukup jelas c yah).

Berikutnya, agar kita dapat memberitahukan git, private key mana yang digunakan, dapat membuat konfigurasi berikut dalam file /.ssh/config:

Host work  HostName github.com  IdentityFile ~/.ssh/key_akun_work  User gitHost personal  HostName github.com  IdentityFile ~/.ssh/key_akun_personal  User git

Dan pada saat melakukan clone (dari konfigurasi “work”), command yang biasanya dituliskan “git@github.com:nama_user/nama_repo.git”, diubah menjadi “git@work:nama_user/nama_repo.git”. Jadi bagian “github.com” diganti dengan identitas host masing-masing sesuai config.

Beres. Jika ada yang perlu dikoreksi, boleh kabari ya. Thank you. 🍭🍬🧡

--

--

Golcha Fun
Golcha Fun

Written by Golcha Fun

Penonton drama Korea sejak 2006; Nulis biar inget

No responses yet