Jekyll

Jekyll uygulamanı deploy et

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.

steps
  1. 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.

  2. 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.

  3. 03

    Deploy et

    Proje kök dizininden "npx harvis deploy _site" çalıştır. Bu ilk deploy için yapılandırma ve giriş gerekmez — hemen canlı bir URL alırsın, ayrıca hazır olduğunda siteyi ücretsiz bir hesaba bağlamak için özel bir claim bağlantısı.

Jekyll'i tek komutla deploy et

Projeni derle, ardından çıktı klasörünü harvis'e ver. İlk deploy için hesap gerekmez — canlı bir bağlantı ve daha sonra yönetmek için özel bir claim bağlantısı alırsın.

terminal
bundle exec jekyll build
npx harvis deploy _site

Terminal yerine dosyaları sürüklemeyi mi tercih edersin? Projeni derle, ardından çıktı klasörünü buraya bırak ve aynı şekilde yayınla.

git hook

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.

in your repo root
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 deploy soruları

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.

Bir Jekyll uygulamasını harvis'e deploy etmek gerçekten ücretsiz mi?

Evet, kart gerekmez. Ücretsiz limitler site başına 500 dosya ve 50 MB'dır, bu da statik bir Jekyll build'i için bol bol yer bırakır. Yayınlanan siteler süresi dolmaz — sen silene kadar yayında kalırlar.

Deploy edilen Jekyll sitesinde kendi alan adımı kullanabilir miyim?

Her site ücretsiz bir harvis.page adresi alır ve claim ettikten sonra panondan kendi alt alan adını seçebilirsin — rastgele biri yerine my-app.harvis.page gibi. Zaten sahip olduğun bir alan adını (mystore.com gibi) siteye yönlendirmek henüz desteklenmiyor.

Bunun Jekyll'i Vercel veya Netlify'a deploy etmekten farkı ne?

Vercel ve Netlify, bir Git reposunu bağlamak ve build'ini onların sunucularında çalıştırmak üzerine kuruludur, yapılandırmak için de bir panoya sahiptirler. harvis bunların hepsini atlar: yerelde (ya da kendi CI'nda) derlersin, çıktı klasörüne karşı tek bir CLI komutu çalıştırırsın ve bir bağlantı alırsın — proje kurulumu yok, siteyi saklamak isteyene kadar hesap da yok.

other frameworks

Başka bir şey mi deploy ediyorsun?

Tarif her yerde aynı — derle, ardından npx harvis deploy ile çıktıyı yayınla.