Menggunakan SSH untuk Remote GitHub
Tags: git, ssh, indonesia, github
Published: 2021-09-08 13:29:06

Halooo semuanya pada kesempatan ini, saya coba membagikan cara untuk menggunakan SSH untuk remote GitHub. Sebelum menggunakan SSH ini pasti kalian seringnya menggunakan HTTPS, nahh kekurangan dari HTTPS ini adalah kita harus menyimpan password GitHub kita kedalam config agar setiap push commit tidak perlu input email/username dan password lagi.

Tapi, dengan menggunakan SSH ini kalian tidak perlu repot untuk menyimpan password lagi karena kita cukup membuat sebuah public dan private key untuk berkomunikasi dengan GitHub. Yukkk kita mulai
![image](https://media.giphy.com/media/3otPoJHLlxDDGniM1y/giphy.gif?cid=ecf05e47d8n0plmt1ra4w48auif4zxddwtsqotjdmmrk0joy&rid=giphy.gif&ct=g)
Pada tutorial ini saya menggunakan Git Bash sebagai terminalnya. Kalau kamu menginstall git sebelumnya pasti sudah mendapatkan paket Git Bash ini.

1. Ketik command `ssh-keygen`
2. Kamu akan mendapatkan input berupa nama file public/private key nya nanti. Untuk sekarang kamu bisa mengkosongkannya terlebih dahulu
3. Untuk input passphrase kamu bisa kosongkan keduanya

Kalau semua langkahnya sudah diikuti nanti akan muncul hasilnya seperti ini :
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7l336m8ue8sv0z3sfhzq.png)
Apakah sudah beres ? tentu belum hehe. Sekarang waktunya mencari lokasi public key kamu
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s1g1x2olsazi8wi6o574.png)
Dari pesan tadi ada sebuah teks `Your public key has been saved in /c/Users/alfian-andi/.ssh/id_rsa.pub` nahh kamu hanya perlu pergi ke folder tersebut
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hywat0h0rzwk6sbqkndo.png)
lalu buka Git Bash disana dengan cara klik kanan lalu pilih `Git Bash Here`. Jika sudah dibuka lalu ketik command :
```bash
cat id_rsa.pub | clip.exe
```
Tapi nanti ngga ada apa-apa. Jadi maksud dari command itu adalah buka `id_rsa.pub lalu copy semua isinya kedalam clipboard`. Untuk membuktikannya coba kamu buka notepad lalu `ctrl + v`
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/smkpzfzyksladaqy96yz.png)
Kalau muncul itu berarti sudah tercopy public-key nya

## Memasukkan Public-key ke GitHub
Sekarang waktunya untuk menambahkan public-keynya kedalam akun GitHub kita
1. Login GitHub kamu https://github.com/
2. Klik foto profile kamu di kanan-atas lalu pilih `settings`
3. Di menu bagian kiri pilih `SSH and GPG keys`
4. Lalu pada bagian `SSH keys` kamu klik buttom `new SSH key`
5. Untuk title kamu isi aja bebas, disini saya isi _Laptop_
6. Nah untuk bagian key ini kamu isi dengan yang saya contohin di notepad tadi 
7. Terakhir klik `Add SSH key`

## Uji Coba SSH
Untuk menguji coba SSH nya disini saya coba buat sebuah private repo dengan nama `hello-ssh`
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/08l5ig7vek4e24ltok85.png)
Saya coba tambah langsung README.md nya biar ada isinya wkwkwk.
Ketika berhasil dibuat seperti ini
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0n5n9xqrvgppuk4z8hie.png)
Kalau kita menggunakan HTTPS command untuk clonenya adalah
```bash
git clone https://github.com/alfianandinugraha/hello-ssh.git
```
karena sekarang sudah menggunakan SSH jadi commandnya
```bash
git clone git@github.com:alfianandinugraha/hello-ssh.git
```
Agar lebih gampang, kamu bisa copy alamat clonenya dibagian button `code` berwarna hijau lalu pilih SSH
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/70bewr6j676ienyxtw2q.png)
Dannn finally kita bisa clone GitHub menggunakan SSH
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7lwtbcym3lwg3wgunemc.png)
## Uji Coba Push Commit
Sepertinya clone repo saja tidak cukup. Disini saya coba menambahkan uji coba untuk commit
1. Buat file `hello.txt`
2. Lalu isi file tersebut dengan `Hello world`
3. Jalankan perintah `git add . && git commit -m "Menambahkan hello.txt"`
4. Lalu jalankan perintah `git push -u origin main` untuk push commit kita ke branch `main`
Dan untuk percobaan ini akhirnya sukses juga
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n5gic2acem591b4985wt.png)

Untuk mengeceknya coba buka repository kamu yang tadi. Dan yaaa sekarang sudah berhasil
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2qvv6d4rsrlqze1tc9w9.png)