
Ringkasan
-
Mengelola dotfile dengan git dapat menghemat waktu dan memberikan opsi pencadangan yang kuat.
-
Menyimpan dotfile dalam sistem kontrol versi (VCS) seperti git dapat memastikan penyiapan yang konsisten di beberapa mesin.
-
Menggunakan GitHub untuk menghosting dotfile memungkinkan berbagi dan kolaborasi dengan mudah.
Dotfiles adalah cara yang mudah diakses dan ampuh untuk mengonfigurasi sistem Linux Anda. Namun bagaimana Anda melacak semuanya dan menggunakannya kembali bila diperlukan? Coba git.
Apa itu Dotfile?
Di Linux, file apa pun yang namanya dimulai dengan “.” adalah file tersembunyi. Secara default, ini tidak akan ditampilkan di pengelola file Anda atau daftar file di baris perintah.
Beberapa program Linux menggunakan file tersembunyi untuk konfigurasi, sering kali membuangnya ke direktori home Anda. Ini adalah pengaturan yang berguna karena mencegah konfigurasi sekaligus memastikannya masih dapat diakses. Karena konfigurasi ini dalam file teks biasa, mudah dibaca dan diedit. Anda juga dapat menggunakan perangkat baris perintah Linux untuk bekerja dengan konfigurasi sistem Anda.
Contoh umum dotfile meliputi:
-
.bashrc, .zshrc
-
.exrc
-
.gitconfig
-
.npmrc
Bagaimana Git atau GitHub Dapat Membantu?
Dotfiles memang bagus, tetapi khusus untuk sistem. Saat Anda perlu mengganti komputer, menggunakan perangkat sekunder, atau mengakses server jarak jauh, Anda mungkin harus mengatur semuanya dari awal lagi.
Menyimpan dotfiles Anda di VCS (Version Control System) dapat membantu Anda menghindari tugas yang berulang ini, memungkinkan Anda untuk langsung menggunakan kembali konfigurasi Anda di komputer lain. Cukup periksa repositori Anda dan Anda akan mendapatkan alias shell yang sama, tema yang familier, dan perilaku yang konsisten.
Terlebih lagi, menyimpan dotfiles di git adalah opsi cadangan yang kuat. Anda bahkan dapat memeriksa riwayat repositori untuk mengetahui kapan—dan mengapa—Anda mengubah konfigurasi tertentu. Dalam suasana kolaboratif, Anda bahkan dapat membagikan dotfile Anda melalui git untuk memastikan semua anggota tim memiliki lingkungan yang konsisten.
Untuk tujuan ini, GitHub adalah yang terbaik. Jika Anda memiliki tempat lain untuk menghosting repositori git Anda, Anda pasti bisa melakukannya, tetapi GitHub membuatnya jauh lebih mudah.
Cara Terbaik Mengelola Dotfiles Anda Dengan Git dan GitHub
Pertama, pahami bahwa segala bentuk penyimpanan dotfiles Anda di git akan menjadi keuntungan besar. Ada detail spesifik tentang cara terbaik untuk melakukannya, tetapi jika Anda dapat menyimpan file di git, memperbaruinya, dan memeriksanya, Anda akan mendapatkan keuntungan yang signifikan dari mengelola dotfiles Anda dengan cara ini.
Namun, pendekatan berikut ini banyak direkomendasikan secara online dan berhasil untuk saya. Pengaturan khusus ini akan membantu Anda menjaga semuanya tetap sinkron dengan sedikit usaha.
Siapkan Repositori Telanjang dan Beberapa Perancah
Karena direktori home Anda mungkin memiliki banyak hal yang tidak Anda inginkan di repositori dotfiles Anda, sebaiknya hindari pengaturan standar. Sebagai gantinya, Anda dapat mengelola dotfiles Anda di repositori kosong.
Repositori kosong seperti repositori normal tanpa file proyek sebenarnya. Ia memiliki semua metadata git yang menjelaskan riwayat file-file itu, hanya saja tidak memiliki file itu sendiri. File-file tersebut dapat berada di tempat lain—di direktori kerja Anda—Anda cukup menggunakan repositori kosong untuk mengontrol versinya.
Mulailah dengan membuat repositori kosong di lokasi baru, misalnya:
mkdir $HOME/.dotfiles
git init --bare $HOME/.dotfiles
Saat Anda bekerja dengan repositori ini, Anda harus menyediakan direktori kerja (untuk file) dan direktori git (untuk repositori itu sendiri):
git --work-tree=$HOME --git-dir=$HOME/.dotfiles ...
Daripada mengetik ini setiap kali Anda menggunakan git, lebih baik menyiapkan alias. Anda juga dapat menyediakan jalur ke repositori kosong itu sendiri sehingga Anda dapat menggunakannya dari direktori mana pun:
alias dotfiles="/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME"
Simpan Dotfile Anda
Mulailah dengan mengidentifikasi dotfile yang ingin Anda kontrol versinya.
Anda kemudian dapat menjalankan perintah ini untuk memulai pengontrolan versi file .bashrc Anda, misalnya:
cd $HOME
dotfiles add .bashrc
dotfiles commit -m "Bash run control file"
Selain menggunakan alias dotfiles alih-alih perintah git biasa, Anda dapat menggunakan git untuk melacak file-file ini seperti biasa. Pendekatan ini sebenarnya sedikit lebih mudah karena Anda dapat menjalankan perintah seperti “dotfiles log” dari direktori mana pun.
Unggah Repositori Anda ke GitHub
Anda mungkin merasa nyaman untuk menghosting repositori Anda di penyedia seperti GitHub. Hal ini dapat mempermudah berbagi akses ke dotfiles Anda, terutama dari mesin di jaringan berbeda. Sangat mudah untuk melakukan ini, bahkan dengan repositori yang sudah ada:
-
Mulai dari halaman Buat Repositori Baru.
-
Masukkan Nama Repositori.
-
Pilih repositori Publik atau Pribadi; Pribadi mungkin yang terbaik (lihat di bawah).
-
Klik Buat Repositori.
Pada tahap ini, Anda akan diperlihatkan layar dengan petunjuk pengaturan. Untuk mendorong repositori Anda yang sudah ada, cukup jalankan dua perintah ini:
dotfiles remote add origin https://github.com//.git
dotfiles push -u origin main
Di mana nama pengguna GitHub Anda dan nama yang Anda pilih untuk repositori Anda.
Berhati-hatilah saat mengunggah repo Anda ke GitHub: dotfiles Anda mungkin berisi data sensitif. Idealnya, Anda harus menghindari memasukkan file yang berisi kata sandi ke repositori mana pun. Jika Anda tidak dapat menghindarinya, pertimbangkan setidaknya untuk menggunakan repositori GitHub pribadi; Anda harus membayar untuk ini.
Gunakan di Sistem Lain
Untuk membagikan dotfile Anda di komputer lain, Anda harus mengulangi proses di atas dan memeriksa repositori kosong. Secara khusus, ini berarti ada dua langkah penting. Pertama, periksa salinan repositori Anda:
cd $HOME
git clone --bare https://github.com//.git
Ini biasanya akan memeriksa ke dalam direktori bernama .git. Setelah diperiksa, Anda bebas mengganti namanya.
Buat ulang alias git wrapper yang Anda gunakan:
alias dotfiles="/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME"
Anda sekarang dapat mengisi direktori kerja Anda—HOME Anda—dengan dotfile yang dikontrol versi:
dotfiles checkout
Pada titik ini, Anda mungkin melihat kesalahan tentang menimpa file pohon yang berfungsi. Ini karena Anda mungkin sudah memiliki dotfile lama atau default seperti .bashrc. Cukup hapus atau pindahkan ini, lalu ulangi pembayaran.
Pengendalian versi dotfiles Anda akan menghemat banyak kerumitan saat Anda meningkatkan atau berpindah sistem. Anda juga dapat memeriksa riwayat lengkap dan melihat kapan Anda mengubah apa, dan mengapa.