Hugo adalah sebuah static site generator yang menggunakan Golang sebagai bahasa pemrograman.
Instalasi
Unduh versi terbaru Hugo dengan cara berikut.
Untuk Ubuntu/Debian
curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest \ | grep browser_download_url \ | grep Linux-64bit.deb \ | grep extended \ | cut -d '"' -f 4 \ | wget -i - Kemudian jalankan perintah dibawah ini, untuk melakukan instalasi.
sudo dpkg -i hugo*_Linux-64bit.deb Konfirmasi apakah Hugo sudah terpasang lewat perintah ini.
hugo version Perintah Umum
Untuk bantuan ketik hugo help.
Local server
hugo server Membuat site baru
Ganti PROJECT_NAME dengan nama project atau nama website. Jalankan perintah dibawah secara berurutan.
hugo new site PROJECT_NAME hugo build Membuat konten baru
hugo new <PATH>/index.md Install theme baru
Menyalin atau git clone sebuah theme pada folder namaproject/themes.
Install dari Git
cd mynewsite cd themes git clone <ALAMAT_GIT_REPO_THEME> Install dari file .zip
Ekstrak semua file yang ada di file .zip yg diunduh, ke dalam folder themes. Struktur folder nya akan jadi seperti ini mynewsite/themes/nama-theme-yg-diunduh
Deployment
Persiapan
- Pastikan
publishDir = "public"di fileconfig.tomldengan contoh sebagai berikut. - Jalankan
hugo
// config.toml baseURL = "/" themesDir = "themes" publishDir = "public" Eksekusi kembali poin 2, tiap kali ada perubahan pada kode.
Firebase
- Pastikan
"public": "public"di filefirebase.jsonsudah sama denganpublishDirdi fileconfig.toml. - Login dengan
firebase login - Aktifkan dengan
firebase init - Edit file
firebase.jsondan tambahkan baris berikut. - Akhiri dengan
firebase deploy --only hosting:nama_project
// firebase.json . "hosting": { "site": "nama_project", . } Untuk re-deploy saat ada perubahan pada kode, jalankan perintah,
Lewat PowerShell
hugo; firebase deploy --only hosting:nama_project Lewat *nix terminal
hugo && firebase deploy --only hosting:nama_project Netlify
- Buat file
netlify.tomlpada root dan salin kode berikut.
// netlify.toml [build] publish = "public" command = "hugo --gc --minify" [context.production.environment] HUGO_VERSION = "0.147.1" HUGO_ENV = "production" HUGO_ENABLEGITINFO = "true" [context.split1] command = "hugo --gc --minify --enableGitInfo" [context.split1.environment] HUGO_VERSION = "0.147.1" HUGO_ENV = "production" #[context.deploy-preview] #command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL" [context.deploy-preview.environment] HUGO_VERSION = "0.147.1" [context.branch-deploy] command = "hugo --gc --minify -b $DEPLOY_PRIME_URL" [context.branch-deploy.environment] HUGO_VERSION = "0.147.1" [context.next.environment] HUGO_ENABLEGITINFO = "true" - Pastikan nilai
HUGO_VERSIONsudah sama dengan versi Hugo yang terpasang. Cek dengan perintahhugo versionlewat terminal. - Kemudian pastikan juga nilai
publish = "public"di filenetlify.tomlsudah sama denganpublishDirdi fileconfig.toml. - Buat site baru dengan cara deploy manual, jalankan perintah
netlify sites:create --manual --with-ci - Pada langkah
Your build command (hugo build/yarn run build/etc):ketikkanhugo --gc --minifyatau cukup denganhugo deploy. - Ikuti langkah selanjutnya.
Untuk mengupdate otomatis, jalankan git push -u origin master tiap kali ada perubahan pada kode.


