Beberapa waktu lalu saya membuat aplikasi kecil untuk rekan kantor, namanya SheetSnap. Fungsinya satu: masukkan satu file Excel, tekan satu tombol, lalu keluar ringkasan isi tiap sheet dalam satu halaman. Tujuannya supaya orang tidak perlu membaca dokumen panjang hanya untuk tahu isinya apa.
Waktu itu saya membuat repo-nya langsung di GitHub lewat browser, dan semua perubahan juga saya ketik di sana. Nyaman selama di kantor. Masalahnya baru terasa ketika saya sedang di lokasi proyek dengan internet seadanya. Mau memperbaiki satu baris saja tidak bisa, karena semuanya ada di internet dan tidak ada satu pun salinannya di laptop saya.
Jadi saya cari cara clone repository GitHub ke folder laptop sendiri. Saya tidak memakai perintah git sama sekali, melainkan lewat aplikasi resmi bernama GitHub Desktop. Prosesnya kurang dari satu menit, dan tulisan ini saya buat dari langkah yang benar-benar saya jalankan sendiri.
Apa yang ingin dipindahkan
Sebelum masuk ke langkahnya, ada baiknya jelas dulu apa yang dipindahkan dan dari mana. Ada tiga tempat yang terlibat, dan masing-masing punya peran berbeda.
- GitHub.com. Repo aslinya ada di sini, tersimpan di internet. Ini yang jadi acuan.
- GitHub Desktop. Aplikasi gratis yang dipasang di laptop. Tugasnya menyalin repo tadi ke laptop, lalu menjaga keduanya tetap sama.
- Folder di laptop. Salinan yang bisa dibuka dan diedit kapan saja, termasuk saat tidak ada internet sama sekali.
Istilah yang dipakai untuk menyalin repo dari internet ke laptop adalah clone. Bukan sekadar mengunduh, dan di bagian bawah saya jelaskan kenapa dua hal itu berbeda.
Pasang GitHub Desktop
Unduh dari halaman resmi GitHub Desktop, lalu pasang seperti aplikasi biasa. Ini gratis dan dibuat langsung oleh GitHub, jadi tidak perlu mencari di tempat lain.
Saat pertama dibuka, aplikasinya akan meminta Anda masuk dengan akun GitHub. Lakukan itu dulu, karena daftar repo Anda baru muncul setelah akunnya terhubung.
Cara clone repository GitHub lewat GitHub Desktop
Kalau lebih enak melihat langsung daripada membaca, seluruh langkahnya sudah saya rekam utuh dari awal sampai selesai.
Lima langkah di bawah ini adalah cara clone repository GitHub yang saya kerjakan sendiri, urutannya sama persis.
- Klik nama repository di kiri atas. Daftar repo yang sudah ada di laptop akan terbuka.
- Tekan tombol Add, lalu pilih Clone repository. Dua pilihan lain di situ, Create new repository dan Add existing repository, bukan yang kita butuhkan sekarang.
- Pilih repo yang mau diambil dari daftar di tab GitHub.com. Daftar ini berisi repo milik akun Anda sendiri.
- Tentukan folder tujuannya di kolom Local path, lewat tombol Choose. Bagian ini sering terlewat, padahal di situlah salinan repo akan diletakkan.
- Tekan Clone, lalu tunggu. Untuk repo kecil seperti milik saya, prosesnya hanya beberapa detik.
Selesai. Tidak ada satu pun perintah yang perlu diketik. Setelah proses selesai, nama repo di kiri atas otomatis berganti ke repo yang baru saja disalin.
Memastikan isinya sama persis setelah proses clone
Bagian ini yang paling ingin saya pastikan sendiri. Percuma menyalin kalau ternyata ada yang tertinggal. Jadi saya buka folder hasil clone di laptop, lalu saya sandingkan dengan tampilan repo di GitHub.


Hasilnya: 10 berkas sama persis, dan 5 folder sama persis. Mulai dari README.md, LICENSE, package.json, sampai SheetSnap.html, semuanya ada di kedua tempat.
Tapi ada satu yang berbeda, dan ini bukan kesalahan. Di folder laptop ada satu folder tambahan bernama .git yang tidak terlihat di halaman GitHub. Isinya bukan berkas proyek, melainkan catatan git tentang repo ini: dari mana asalnya, riwayat perubahannya, dan apa saja yang belum dikirim balik.
Jangan dihapus dan jangan diubah isinya. Folder itulah yang membuat salinan ini tetap terhubung dengan repo aslinya.
Kenapa saya tidak pakai Download ZIP saja
Di halaman repo GitHub sebenarnya ada tombol hijau Code yang menyediakan Download ZIP. Tapi ada perbedaan yang cukup mengganggu dalam pemakaian sehari-hari.
- ZIP tidak tahu asalnya dari mana. Tidak ada folder .git di dalamnya, jadi hasilnya cuma kumpulan berkas biasa yang terputus dari repo aslinya.
- Perubahan tidak bisa dikirim balik. Dengan hasil clone, suntingan yang saya kerjakan offline bisa saya kirim ke GitHub begitu internet kembali bagus. Dengan ZIP, saya harus mengunggah manual satu per satu.
- Riwayat perubahan ikut terbawa. Saya bisa melihat kapan sebuah berkas diubah dan kenapa, tanpa perlu membuka browser.
- Mengambil pembaruan jauh lebih gampang. Kalau ada perubahan baru di GitHub, cukup tekan satu tombol. Dengan ZIP, berarti mengunduh ulang semuanya lalu menimpa folder lama, dan itu rawan menghapus pekerjaan sendiri.
ZIP tetap berguna kalau Anda cuma mau melihat isi sebuah proyek sekali lalu selesai. Tapi kalau niatnya ikut mengerjakan, clone yang lebih masuk akal.
Yang perlu diperhatikan sebelum memakainya
Beberapa hal ini saya tulis karena pernah saya alami sendiri, bukan karena membaca di tempat lain.
- Pilih folder yang gampang dicari. Secara bawaan, GitHub Desktop mengusulkan folder Documents. Itu boleh saja, tapi pastikan Anda ingat di mana, supaya tidak bingung mencarinya nanti.
- Hindari folder yang ikut disinkronkan layanan awan. Folder OneDrive, Google Drive, dan sejenisnya terus memantau perubahan berkas. Isi folder .git berubah sangat sering, dan dua sistem yang sama-sama ingin mengatur berkas yang sama bisa saling bentrok.
- Clone butuh internet, mengeditnya tidak. Penyalinan awal tetap memerlukan koneksi. Setelah itu baru bisa dikerjakan sepenuhnya offline.
- Repo yang besar makan ruang penyimpanan. Yang diunduh bukan cuma berkas yang terlihat, tapi juga riwayatnya. Punya saya kecil jadi tidak terasa, tapi untuk proyek besar hal ini perlu dipertimbangkan.
- Daftar repo yang muncul hanya milik akun Anda. Kalau mau menyalin repo orang lain, pakai tab URL dan tempel alamat repo-nya.
Langkah selanjutnya setelah repo ada di laptop
Mulai titik itu, folder hasil clone bisa diperlakukan seperti folder biasa. Saya buka berkasnya di editor kode, saya ubah seperlunya, lalu saya simpan. Semuanya berjalan tanpa internet.
Begitu kembali ke jaringan yang layak, GitHub Desktop otomatis menampilkan daftar berkas yang saya ubah. Tinggal diberi keterangan singkat, lalu dikirim ke GitHub. Itu bagian berikutnya, dan tidak saya bahas di sini supaya tulisan ini tetap fokus pada satu hal saja: memindahkan repo ke laptop.
Aplikasi yang saya pakai sebagai contoh di tulisan ini kode sumbernya terbuka dan bisa Anda lihat sendiri di halaman SheetSnap di GitHub.