Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Mudah Deploy Sistem Informasi ke Server dengan Git Hook!

Posted on August 28, 2018

Masih banyak yang bingung dengan cara upload software yang dikembangkan dalam repositori Git ke server, apakah menggunakan metode upload file via FTP seperti biasa, atau via cron untuk pull repo tiap waktu yang ditentukan. Pada tutorial kali ini, kita akan menggunakan metode paling mudah yaitu Git Hook.

Apa itu Git Hook?

Git Hook secara sederhana adalah fasilitas bawaan dari Git yang bisa diisi dengan script yang akan dijalankan sebelum atau setelah suatu proses di Git berjalan. Misal, sebelum commit file, lakukan script A, atau setelah di push, lakukan script B.

Syaratnya, server biasanya sudah terinstall Git dan kita punya akses SSH.

Langkah 1, Bikin Repo Git temporer di Server

Kenapa saya bilang temporer? karena sebenarnya hanya dibutuhkan sesekali saja,  itupun hanya kerangkanya saja, untuk deploy software saja. Cara pembuatannya, silakan login ke server dan buat repo git dengan:

[sourcecode]git init –bare namarepo.git[/sourcecode]

sesuaikan namarepo.git dengan nama software atau lainnya.

Langkah 2, Add Remote Repository di Git Lokal/Laptop

pada repo git lokal di Laptop, tambahkan repositori remote selain remote Origin. misalnya, sebut saja production

Langkah 3, Bikin Hook di Repo Git temporer di Server

Kembali ke server lagi, dan masuk ke direktori git temporer yang tadi dibuat. Masuk ke folder hooks, dan buat satu file baru bernama post-receive. Yang isinya seperti ini:

[sourcecode]
#!/bin/bash
TRAGET="/home/emka/subdomain/whucing"
GIT_DIR="/home/emka/tmp-git/wuching.git"
BRANCH="master"

while read oldrev newrev ref
do
# only checking out the master (or whatever branch you would like to deploy)
if [[ $ref = refs/heads/$BRANCH ]];
then
echo "Ref $ref received. Deploying ${BRANCH} branch to production…"
git –work-tree=$TRAGET –git-dir=$GIT_DIR checkout -f $BRANCH
else
echo "Ref $ref received. Doing nothing: only the ${BRANCH} branch may be deployed on this server."
fi
done
[/sourcecode]

dimana folder-folder seperti target dan git dir harus disesuaikan. Pada script post-receive itu, kita akan baca revisi pada git, jika menemukan versi terbaru, segera deploy ke folder target.

Langkah 4, Add Git Remote Production di Laptop

Langkah keempat, kembali ke laptop. Tambahkan repo remote yang ada di server ke repo git lokal laptop kita dengan perintah:

[sourcecode]git remote add production emka@namaserver.com:tmp-git/wuching.git[/sourcecode]

dimana production adalah nama repo remotenya (bisa diganti yang lain) dan emka@namaserver.com adalah user dan server yang kita pakai, dan tmp-git/wuching.git adalah nama folder tempat REPO GIT SEMENTARA yang kita buat.

Langkah 5, Mulai Commit dan Push ke Production

Silakan buat satu perubahan di script, kemudian commit pada git. Lalu push ke server production (atau nama lain yang kamu pakai)

[sourcecode]git push production master[/sourcecode]

jika sukses, kita akan ditanya password ssh dari user yang kita catatkan pada repo remote. Tunggu proses push repo selesai.

Perhatikan pada folder target di server, seharusnya perubahan yang kita coba tadi sudah terpasang.

+++ Tambahan +++

Untuk mempermudah proses push, silakan tautkan authorized keys SSH biar kita bisa push lebih cepat tanpa masukkan password user.

Caranya baca isi dari file .ssh/id_rsa.pub komputer/laptop development dan paste ke server di file .ssh/authorized_keys

Selamat mencoba!

Terbaru

  • Apa itu Game Luna Mobile dan Bagaimana Cara Menangnya?
  • Apa Itu Kompensasi Sistem Trail Mobile Legends? Ini Penjelasan dan Cara Klaim Hadiahnya
  • Apa Itu Update Google Pixel 2 Desember 2025? Ini Penjelasannya!
  • Ini Cara Reset Desil di Aplikasi Cek Bansos Biar Valid (Update Januari 2026)
  • Apa Itu EZNET Wireless dan Fiber Optic? Ini Perbedaan dan Pengertian Lengkapnya
  • Pengertian Rework Magic Wheel dan Rank Mythic Eternal: Apa itu Perubahan Sistem Baru Mobile Legends?
  • Apa Itu Diamond Combo? Pengertian Game Puzzle Viral yang Katanya Bisa Hasilkan Cuan
  • Apa Itu Showbox? Pengertian, Fungsi, dan Cara Menggunakannya di Android
  • Cara Mengatasi Fitur Monet Facebook Pro Tiba-tiba Hilang
  • Google Bikin Kejutan! Pixel 10 Diskon Gila-gilaan di YouTube Premium
  • Apa Itu Google CC? Ini Pengertian Agen Produktivitas AI Eksperimental Terbaru
  • Apa Itu Ultras Seblak di eSport? Pengertian dan Fenomena Baru Suporter eSport
  • Android 16: Animasi Folder Baru yang Mengubah Cara Kita Berinteraksi!
  • Android 16: Notifikasi Lokasi ‘Blue Dot’ – Fitur Baru yang Perlu Kalian Ketahui!
  • Apa Itu Risiko Auto Click di Event Spongebob Mobile Legends? Ini Penjelasannya
  • Apa Itu Fitur Eksperimental Windows? Ini Pengertian dan Cara Menonaktifkannya
  • Apa Itu Android 16 Beta 1? Ini Pengertian dan Fitur Terbarunya
  • Belum Tahu? Ini Trik Supaya Bisa Dapat Skin Patrick Mobile Legends dengan Harga Murah
  • Pixel Desember 2025: Update Besar Siap Meluncur, Apa yang Baru?
  • Apa Itu HYFE XL Prioritas? Ini Pengertian, FUP, dan Realita Kecepatannya
  • Pengertian Render dan Convert: Apa Bedanya dalam Video Editing?
  • Cara Mengatasi Aplikasi Office yang Terus Muncul dan Menerapkan Perubahan Pengaturan Privasi
  • Pixel Launcher Mendapatkan Sentuhan Google Search Baru!
  • Penyebab Aplikasi Wondr BNI Tidak Bisa Dibuka
  • Kode 0425 Daerah Mana? Ini Pengertian dan Fakta Sebenarnya
  • Apa Itu SSS CapCut? Pengertian Downloader Video Tanpa Watermark yang Wajib Kalian Tahu
  • Apa Itu Paket GamesMAX Telkomsel? Ini Pengertian dan Fungsinya Bagi Gamers
  • Apa Itu Menu Plus di Google Search? Ini Pengertian dan Fungsinya
  • Apa Itu Lepas Kolpri? Ini Pengertian dan Fenomenanya di Dunia Gaming
  • Pixel Buds Pro Dapat Update Software dengan Dukungan ANC Adaptif dan Peningkatan Audio
  • Apa Itu AI Kill Switch di Firefox? Ini Pengertian dan Detail Fitur Terbarunya
  • Apa Itu Platform Modular Intel Alder Lake N (N100)? Ini Pengertian dan Spesifikasinya
  • Apa Itu Armbian Imager? Pengertian Utilitas Flashing Resmi untuk Perangkat ARM Kalian
  • Apa Itu OpenShot 3.4? Pengertian dan Fitur LUT Terbaru untuk Grading Warna
  • Flatpak 1.16.2: Sandbox Baru untuk GPU Intel Xe dan VA-API
  • Apa Itu Migrasi Pod di RunPod? Ini Pengertian dan Cara Kerjanya
  • Loading Model AI Lama? Coba Fitur Cached Models RunPod Ini, Hemat Waktu & Biaya!
  • Replicate Diakuisisi Cloudflare? Tenang, Ini Justru Kabar Baik Buat Developer AI
  • Apa Itu Nemotron-3 Nano? Pengertian Model Bahasa Ringkas dan Hasil Uji Cobanya
  • Prompt AI Dapur Aestetik
  • Apa Itu “I Am Not a Robot – reCAPTCHA Verification ID: 2165”? Ini Pengertian dan Bahayanya
  • Apa Itu Serangan Clop Ransomware pada CentreStack? Ini Pengertian dan Dampaknya
  • Apa Itu E-Note? Pengertian Platform Kripto yang Baru Saja Disita FBI
  • Pengertian CVE-2025-37164: Celah Keamanan Fatal di HPE OneView Adalah?
  • Apa Itu APT137? Pengertian Kelompok Peretas Tiongkok yang Mengincar Windows
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2025 emka.web.id | Design: Newspaperly WordPress Theme