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 Data Pendaftar KIP Kuliah 2026 Jalur SNBP dan Bocoran Kriteria yang Lolos!
  • Inilah Game Silent Hill: Townfall, Teror Psikologis Baru yang Bakal Bikin Kalian Gemetar di Tahun 2026!
  • Inilah Trailer Mortal Kombat 2, Johnny Cage Resmi Gabung dan Siap Hadapi Shao Kahn!
  • Inilah Spesifikasi Lengkap Samsung Galaxy S26 yang Baru Meluncur, Ternyata Harganya Naik Segini!
  • Inilah Cara Mematikan MSA Xiaomi Supaya HP Nggak Lemot dan Bebas Iklan, Ternyata Langkahnya Simpel Banget!
  • Inilah Kronologi Mobil Calya Plat D yang Viral Lawan Arus di Jakpus, Ternyata Bawa Banyak Plat Palsu!
  • Inilah Axioo Hype AI 5, Laptop AI Canggih yang Nggak Bikin Kantong Bolong!
  • Ini Loh Kejahatan Modus Phishing Google Tasks Terbaru yang Bisa Nguras Data Perusahaan Kalian
  • Inilah Poco X7 5G dan M7 Pro 5G, HP Gaming Performa Ekstrem yang Ngebikin Mabar Kalian Jadi Anti Lag!
  • Inilah Cara Mengubah Lahan Kosong Jadi Uang Lewat Strategi Land Banking
  • Ini Trik Supaya Gajian YouTube Shorts Tembus Puluhan Juta dari Penonton Bule!
  • Jangan Sampai Keliru! Begini Cara Cek Total Jam Linear dan Non Linear di EMIS GTK IMP 2026
  • Cuma Nonton Drama Pendek Bisa Cair Uang Tunai? Bongkar Habis Kebenaran Aplikasi FunFlick di Sini!
  • Apa itu Resetter Epson L3210?
  • Ini Loh Ukuran A4, F4, A3, B5, A5 di Canva Biar Hasil Cetakan Kalian Nggak Terpotong!
  • Inilah Cara Transfer Pulsa Telkomsel Paling Update 2026, Lengkap dengan Biaya dan Syarat Terbarunya!
  • Inilah Xolo.io, Solusi Praktis Buat Kalian yang Pengen Bangun Startup Skala Global Tanpa Harus Pindah ke Luar Negeri
  • Inilah Caranya Lapor SPT Tahunan Lewat Coretax Supaya Nggak Kena Denda
  • Inilah Alasan Kenapa Software House Lokal Susah Dapat Insentif Pajak R&D dan Isu Amortisasi Pegawai yang Bikin Pusing
  • Inilah Alasan Kenapa Developer Game Indonesia Lagi Curhat Soal Pajak: Kasus Toge Productions
  • Inilah Alasan Ilmiah Kenapa Lampu Lalu Lintas Pakai Warna Merah, Kuning, dan Hijau!
  • Nonton Drama Dapat Duit? Ini Kebenaran Soal FunFlick yang Wajib Kalian Tahu!
  • Ini Cara Isi NPWP dan Rekening di EMIS GTK IMP 2026 Biar Tunjangan Lancar
  • Inilah Trik Farming AFK Roblox Fish It 24 Jam Tanpa Bikin HP Panas!
  • Hobi Nonton Drama Jadi Cuan? Ini Cara Ngebanyakin Diamond FreeReels Tanpa Ribet!
  • Panduan Lengkap Ukuran Banner Canva untuk Desain yang Menarik
  • Apakah ViaPaypal.id Penipuan?
  • Beda BRIVA dan Rekening? Ini Penjelasannya!
  • Pahami Perbedaan Kode SIEX, SIPX, dan SISX dengan Mudah!
  • Arti SPT Sebelumnya Tidak Ada dari BPS yang Perlu Kalian Pahami
  • How to Use User Accounts & System Admin on Linux Mint 23
  • What is Docker Digest Watching? Understanding the New Standard in Docker 8.2
  • What is LibreOffice Online? A Guide to the Community-Driven Cloud Office Suite
  • Lutris 0.5.21 Adds Steam Sniper Runtime & New Emulators: What’s New?
  • Wine 11.3 Released: New Features and Improvements Explained
  • Prompt AI Menyusun Script Pola Suara Karakter agar Brand Jadi Ikonik
  • Prompt AI untuk Merancang Karakter Brand yang Ikonik
  • Prompt AI Audit Konten Sesuai Karakter Brand
  • Prompt AI Merubah Postingan LinkedIn Jadi Ladang Diskusi dengan ChatGPT
  • Prompt AI: Paksa Algoritma LinkedIn Promosikan Konten Kalian
  • 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