ដេប្លយកម្មវិធី Jekyll របស់អ្នក
Jekyll is what GitHub Pages runs under the hood for plain Jekyll sites, and the output is identical either way: a self-contained _site folder of plain HTML. Point the CLI at it directly.
- 01
Build the site
Run "bundle exec jekyll build" (plain "jekyll build" also works if you're not using Bundler). Jekyll converts your Markdown and layouts into static HTML in a "_site" folder.
- 02
Skip serve mode
"jekyll serve" starts a local dev server with live reload — it builds into "_site" too, but you want it stopped and a plain "build" run for a clean deploy.
- 03
ដេប្លយវា
ដំណើរការ "npx harvis deploy _site" ពី root គម្រោងរបស់អ្នក។ មិនចាំបាច់ config និងមិនចាំបាច់ចូលសម្រាប់ deploy ដំបូងនេះទេ — អ្នកទទួលបាន URL ផ្ទាល់ភ្លាមៗ ព្រមទាំងតំណទាមទារឯកជនមួយ ដើម្បីភ្ជាប់គេហទំព័រទៅគណនីឥតគិតថ្លៃមួយនៅពេលណាដែលអ្នកត្រៀមខ្លួនរួចរាល់។
ដេប្លយ Jekyll ដោយពាក្យបញ្ជាតែមួយ
Build គម្រោងរបស់អ្នក រួចប្រគល់ថតលទ្ធផលទៅ harvis។ មិនចាំបាច់មានគណនីសម្រាប់ deploy ដំបូងទេ — អ្នកនឹងទទួលបានតំណភ្ជាប់ផ្ទាល់ និងតំណទាមទារឯកជនមួយ ដើម្បីគ្រប់គ្រងវានៅពេលក្រោយ។
bundle exec jekyll build npx harvis deploy _site
ចង់អូសឯកសារជំនួសឱ្យប្រើ terminal មែនទេ? Build គម្រោង រួច ទម្លាក់ថតលទ្ធផលនៅទីនេះ ហើយផ្សព្វផ្សាយវាតាមរបៀបដដែល។
Deploy Jekyll on every git push
The command above is one you will run again after every change. A git hook runs it for you: this one already points at _site, the folder Jekyll builds into.
The folder holding the finished site. "." is the repo root, which is right for hand-written HTML; a static-site generator writes somewhere else.
pre-push fires on every branch and every remote, so a feature branch would publish over your live site. With this on, a push from anywhere else exits early and goes through untouched.
cat > .git/hooks/pre-push <<'EOF' #!/bin/sh set -e bundle exec jekyll build harvis deploy _site EOF chmod +x .git/hooks/pre-push
The options, the gotchas and how to share a hook with your team are on the git hook page.
សំណួរអំពីការដេប្លយ Jekyll
I already use GitHub Pages for this Jekyll site. Why deploy here too?
GitHub Pages ties the site to a GitHub repo and its own domain scheme. Deploying the same _site folder here with npx harvis gets you an independent live link in about two seconds — handy for previewing a branch or a client draft before it's ready to merge.
Does Jekyll's built-in Sass and asset pipeline still work?
Yes — Sass compiles to plain CSS as part of jekyll build, so by the time _site exists everything is already plain static files. Nothing about the deploy step needs to know Jekyll was involved.
តើការដេប្លយកម្មវិធី Jekyll ទៅ harvis ឥតគិតថ្លៃពិតប្រាកដមែនទេ?
បាន មិនចាំបាច់ប្រើកាតទេ។ ដែនកំណត់ឥតគិតថ្លៃគឺឯកសារ ៥០០ និង ៥០ MB ក្នុងមួយគេហទំព័រ ដែលគ្រប់គ្រាន់សម្រាប់ build Jekyll static ដោយមានទំហំគ្រប់គ្រាន់។ គេហទំព័រដែលបានផ្សព្វផ្សាយមិនផុតកំណត់ទេ — ពួកវានៅតែដំណើរការរហូតដល់អ្នកលុបពួកវាចេញ។
តើខ្ញុំអាចប្រើ domain ផ្ទាល់ខ្លួនរបស់ខ្ញុំជាមួយគេហទំព័រ Jekyll ដែលបានដេប្លយបានទេ?
គេហទំព័រនីមួយៗទទួលបានអាសយដ្ឋាន harvis.page ឥតគិតថ្លៃមួយ ហើយអ្នកអាចជ្រើសរើស subdomain ផ្ទាល់ខ្លួនរបស់អ្នកពី dashboard បន្ទាប់ពីទាមទារវា — ដូចជា my-app.harvis.page ជំនួសឱ្យអាសយដ្ឋានចៃដន្យ។ ការចង្អុល domain ដែលអ្នកមានស្រាប់ (ដូចជា mystore.com) ទៅកាន់គេហទំព័រនេះមិនទាន់អាចធ្វើបានទេនៅឡើយ។
តើវាខុសពីការដេប្លយ Jekyll ទៅ Vercel ឬ Netlify យ៉ាងដូចម្តេច?
Vercel និង Netlify ត្រូវបានបង្កើតឡើងជុំវិញការភ្ជាប់ Git repo និងដំណើរការ build របស់អ្នកនៅលើ server របស់ពួកគេ ជាមួយ dashboard មួយសម្រាប់កំណត់រចនាសម្ព័ន្ធ។ harvis រំលងអ្វីៗទាំងនោះទាំងអស់៖ អ្នក build នៅមូលដ្ឋាន (ឬនៅក្នុង CI ផ្ទាល់ខ្លួនរបស់អ្នក) ដំណើរការពាក្យបញ្ជា CLI តែមួយប្រឆាំងនឹងថតលទ្ធផល រួចទទួលបានតំណភ្ជាប់មួយ — មិនចាំបាច់រៀបចំគម្រោង និងមិនចាំបាច់មានគណនីទេ រហូតដល់អ្នកចង់រក្សាគេហទំព័រនោះ។
កំពុងដេប្លយអ្វីផ្សេងទៀតមែនទេ?
រូបមន្តដូចគ្នាគ្រប់ទីកន្លែង — build វា រួច npx harvis deploy លទ្ធផល។