Minggu lalu saya memulai masa probation. Salah satu hal yang biasa kita lakukan adalah menyiapkan local environment, salah satunya git. Di perusahaan yang baru ini kami menggunakan github. Sayangnya saya tidak bisa menggunakan akun pribadi, sehingga harus menggunakan akun kantor.
Masalah yang saya hadapi adalah bagaimana tetap menggunakan dua akun dengan dua SSH Key berbeda. GitHub sering salah mengenali akun karena laptop hanya memakai satu SSH key default. Akibatnya muncul error seperti:
Permission denied to wrong-user
Saya akan membahas solusi yang diterapkan untuk mengatasi masalah ini.
Tujuan Akhir
Setelah setup selesai, kamu bisa:
- push ke akun kantor → git@github.com-office:company/repo.git
- push ke akun personal → git@github.com-personal:username/repo.git
dan Git akan otomatis memilih SSH key yang tepat.
Buat SSH Key untuk Akun Personal
Jika akun kantor sudah punya key, sekarang buat key baru untuk akun personal:
ssh-keygen -t ed25519 -C "email-pribadi@example.com"
Ketika muncul pertanyaan:
Enter file in which to save the key:' ~/.ssh/gitpersonal`
Jangan gunakan default. Ganti nama file:
Nama file bebas, yang penting unik.
Tambahkan ke ssh-agent
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/gitpersonal
Cek key yang sudah ter-load.
ssh-add -l
Seharusnya ada dua key: kantor + personal.
Tambahkan Public Key ke GitHub Personal
Tampilkan public key:
cat ~/.ssh/gitpersonal.pub
Copy → buka GitHub →
Settings → SSH and GPG Keys → New SSH Key
Konfigurasi ~/.ssh/config
Edit file:
nano ~/.ssh/config
Tambahkan dua blok host:
`
Host github.com-office
HostName github.com
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/gitkantor
Host github.com-personal
HostName github.com
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/gitpersonal
`
Ubah Remote URL pada Setiap Repo
Ini bagian yang paling sering terlewat 🔥
Setiap repo harus diarahkan ke host alias yang benar.
🔸 Repo personal
git remote set-url origin git@github.com-personal:akunpersonal/nama-repo.git
🔸 Repo kantor
git remote set-url origin git@github.com-office:akunkantor/nama-repo.git
Cek:
git remote -v
Test Koneksi
🔸 Test akun kantor
ssh -T git@github.com-office
Harus keluar:
Hi akunkantor! You've successfully authenticated...
🔸 Test akun personal
ssh -T git@github.com-personal
Harus keluar:
Hi akunpersonal! You've successfully authenticated...
Kalau masih salah akun → berarti ssh-agent belum memuat key yang benar.
Troubleshooting Umum
Masih pakai akun yang salah?
Coba reset agent:
ssh-add -D
ssh-add ~/.ssh/gitkantor
ssh-add ~/.ssh/gitpersonal
Remote URL masih HTTPS
https://github.com/username/repo.git
Harus diganti ke SSH host alias seperti:
git@github.com-personal:username/repo.git
SSH config typo
Pastikan:
- IdentityFile ejaannya benar.
- Path file benar.
- Host alias sama dengan remote URL
Top comments (0)