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

  • Inilah Kumpulan Cheat GTA San Andreas Terlengkap 2026!
  • Belum Kebagian Tiket Mudik? Inilah Bocoran Jadwal Tiket Kereta Tambahan Lebaran 2026!
  • Apa itu Pengertian Web Scraping?
  • Cara Isi Instrumen Pengelolaan Pengawas TKA Lancar Jaya Tanpa Masalah
  • Cara Isi Instrumen MBG di Healthy Madrasah/EMIS Tahun 2026
  • Inilah Cara Mengatasi Rekening Tidak Valid di Info GTK 2026 Biar Tunjangan Cair
  • Cara Isi Observasi Kinerja Kepala Sekolah di Ruang GTK 2026, Biar Nggak Bingung Lagi!
  • Inilah Cara Atasi SKTP Januari-Februari 2026 yang Belum Muncul di Info GTK
  • Pusing Rekening Info GTK Silang Merah? Tenang, Ini Cara Mengatasinya Biar Tunjangan Kalian Cepat Cair!
  • Cara Jadi Lebih Sehat Dengan Ponsel Pintar Kalian
  • WA Kini Coba Fitur Web App untuk Panggilan
  • Google Meluncurkan Pembaruan Sistem Besar Februari 2026
  • Discord Tambahkan Verifikasi Usia: Apa Artinya?
  • Telegram Rilis Desain Baru untuk Android dengan Efek Liquid Glass, Sudah Tersedia!
  • Google Home: Perbaikan Lama yang Bisa Membuat Pengalaman Lebih Baik
  • Google Gemini di Chrome Kini Hadir untuk Chromebook dan Laptop Plus
  • YouTube Music Kini Tambah Fitur Lirik Lagu, Premium Wajib Tahu!
  • Inilah Link Video Viral Air Mancur Amalia Mutya yang Bikin Geger TikTok? Bahaya Phising
  • Inilah Fakta Lengkap Dibalik Video Gilcans Ambon Viral 1 Menit 47 Detik yang Dicari Netizen
  • Inilah Kenapa Video Botol Parfum Viral di TikTok dan Kaitannya Sama Winda Can!
  • Inilah Fakta di Balik Video Tren Palu Kuning Viral yang Bikin Heboh Media Sosial
  • Apa itu Desil 1 sampai 10 Di DTSEN Kemensos? Ini Cara Hitungnya
  • Apakah Pinjol Kilat Cicil: Legal atau Ilegal? Penipuan atau Tidak?
  • Cara Bikin Aplikasi SaaS Fullstack Sederhana dalam 10 Menit dengan Claude
  • Berapa Lama Verifikasi Dana Premium? Jangan Panik, Ini Penjelasannya!
  • NotebookLM Sekarang Bisa Kustomisasi Slide Presentasi Secara Dinamis
  • Review Lengkap Headset SteelSeries Arctis Nova Elite
  • Cara Cek Bansos Atensi YAPI 2026 dan Jadwal Cairnya!
  • Kenapa 2026 Bakal Jadi Tahun Kejayaan Gaming di Linux? Ini Jawabannya
  • Download Upload DNS dan SPTJM SD-SMP untuk Administrasi TKA 2026
  • Why Do Linux Users Use Non-Free Software? Explained Simply
  • How to Recover Deleted Files from VMware Datastore
  • How to Fix Missing Audio Ports in Device Manager
  • Plex vs Jellyfin: Why Plex is Still the Best Self-Hosted Media Server for Most Users
  • KDE Plasma 6.7 Brings AI-Powered Multitasking to Linux with Smart Window List
  • Inilah Cara Bikin Postingan Viral Menggunakan AI
  • Inilah Cara Buat Conversation Starter di Claude Project Agar Workflow Kalian Lebih Sat-Set
  • Cara Membuat Knowledge Base Audit untuk Claude Project Agar Dokumen Kalian Nggak Berantakan
  • Cara Ubah Role Definition Menjadi Custom Instructions yang Efektif buat Claude Project
  • Cara Mendefinisikan Role Project Claude Agar Hasilnya Lebih Akurat dan Konsisten
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
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

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