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 -v 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
Hugo Extended
Unduh versi terbaru Hugo Extended 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.toml
dengan contoh sebagai berikut.
baseURL = "/"
themesDir = "themes"
publishDir = "public"
- Jalankan
hugo
Eksekusi kembali poin 2, tiap kali ada perubahan pada kode.
Firebase
- Pastikan
"public": "public"
di filefirebase.json
sudah sama denganpublishDir
di fileconfig.toml
. - Login dengan
firebase login
- Aktifkan dengan
firebase init
- Edit file
firebase.json
dan tambahkan baris berikut.
.
"hosting": {
"site": "nama_project",
.
}
- Akhiri dengan
firebase deploy --only hosting: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.toml
pada root dan salin kode berikut.
[build]
publish = "public"
command = "hugo --gc --minify"
[context.production.environment]
HUGO_VERSION = "0.63.2"
HUGO_ENV = "production"
HUGO_ENABLEGITINFO = "true"
[context.split1]
command = "hugo --gc --minify --enableGitInfo"
[context.split1.environment]
HUGO_VERSION = "0.63.2"
HUGO_ENV = "production"
#[context.deploy-preview]
#command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL"
[context.deploy-preview.environment]
HUGO_VERSION = "0.63.2"
[context.branch-deploy]
command = "hugo --gc --minify -b $DEPLOY_PRIME_URL"
[context.branch-deploy.environment]
HUGO_VERSION = "0.63.2"
[context.next.environment]
HUGO_ENABLEGITINFO = "true"
- Pastikan nilai
HUGO_VERSION
sudah sama dengan versi Hugo yang terpasang. Cek dengan perintahhugo version
lewat terminal. - Kemudian pastikan juga nilai
publish = "public"
di filenetlify.toml
sudah sama denganpublishDir
di fileconfig.toml
. - Buat site baru dengan cara deploy manual, jalankan perintah berikut.
netlify sites:create --manual --with-ci
- Pada langkah
Your build command (hugo build/yarn run build/etc):
ketikkanhugo --gc --minify
atau cukup denganhugo deploy
. - Ikuti langkah selanjutnya.
Untuk mengupdate otomatis, jalankan git push -u origin master
tiap kali ada perubahan pada kode.
Top comments (0)