Membuat repo di GitHub lewat konsol – tanpa ditanya password

Masih berhubungan dengan tulisan sebelumnya. Seperti dijelaskan, saya kebagian tugas untuk melakukan migrasi repo dari bzr ke GitHub. Menggunakan skrip, pekerjaan memindahkan repo ternyata lebih cepat dan mudah. Namun ada satu masalah: Saya masih harus buat manual repo dari peramban. Apa bisa buat repo langsung dari terminal?

Dari hasil googling, skrip shell untuk membuat repo GitHub dari terminal adalah sebagai berikut:

Waktu dites, ternyata berhasil. Hanya saja, dengan skrip ini kita tetap harus memasukkan password akun GitHub secara manual. Itu artinya sama saja bohong, karena jika mau dibuat otomatis, tiap mau bikin repo harus tetap memasukkan password. Mari googling lagi.

Dari hasil googling dan bertanya pada grup kingdom of Pegel, akhirnya dapat petunjuk, bahwa kita bisa menggunakan token sehingga tidak perlu lagi pakai password. Untuk membuat token pribadi, silakan ikuti langkah-langkah di situs resminya di sini.

Misalkan token yang dipunya seperti ini initokennya1234567890. Kita masukkan token ini dalam parameter di curl. Kalau menurut manualnya sih, bisa disimpan di parameter -H "Authorization: token INITOKENNYA" tapi sepertinya saya salah karena masih tetap ditanya password. Tapi dari petunjuk lainnya, ternyata bisa juga disimpan di parameter -u. Hasilnya jadi seperti ini:

Cara penggunaannya pun mudah. Di terminal, cukup ketik sh skripnya.sh NAMAREPO. Misalnya nama reponya repocli, maka di terminal:

$ sh skripnya.sh repocli

Jika tidak ada halangan, seharusnya nanti keluaran berupa json yang menandakan kita berhasil membuat repo tersebut. Contohnya seperti ini:

Selamat! Anda berhasil membuat repo dari terminal!

Sebentar… Itu kan untuk repo pribadi. Apa bisa buat repo untuk akun organisasi?
Tentu saja bisa. Menurut dokumentasi API GitHub, hanya perlu mengganti parameter /user/repos dengan alamat organisasi kita. Misalkan organisasinya blankon-packages, maka alamat curl-nya diubah menjadi seperti ini:

Selamat mencoba!

2 Thoughts.

    • kalau ga salah ga bisa pake ssh atau masalah apa gitu 😀
      lupa alasannya. lagian di dokumentasi APInya ga dibahas masalah ssh ini sih. jadi harus pake token. cmiiw

Ada komentar?

%d bloggers like this: