access_time
hourglass_empty
person_outline

Bagaimana Cara Menggunakan Git Hook?

Proses mengembangkan aplikasi yang bermutu itu kompleks. Untuk melakukannya, kami menggunakan tool yang dapat melengkapi proses coding. Salah satu proses tersebut adalah otomatisasi. Hal tersebut dibutuhkan developer sekaligus sysadmin untuk mengurangi waktu mendeploy aplikasi. Git adalah salah satu tool populer untuk tugas ini. Itulah mengapa kami menghadirkan tutorial ini. Kami akan menunjukkan cara memakai Git hooks untuk meningkatkan proyek VPS Anda.

Apa itu Git?

Sebelum membahas Hooks, mari ulas pengertian Git terlebih dahulu.

Git adalah versi open source untuk kontrol aplikasi. Dengan Git, Anda dapat memantau proses development software secara detail.

Git begitu populer di kalangan developer, dan banyak proyek open source yang menggunakannya.

Apa Itu Git Hooks?

Dengan Git, Anda dapat membuat berbagai cabang development, mendaftar perubahan dan memiliki kontrol penuh atas versi Git yang digunakan. Namun, Anda dapat mengotomatiskan proses ini. Otomasi Git bekerja pada level program dan deployment. Itulah gunanya Hooks.

Git hooks adalah skrip shell yang berjalan secara otomatis sebelum atau setelah Git menjalankan perintah penting seperti Commit atau Push. Agar Hook berfungsi, Anda perlu memberikan izin eksekusi kepada sistem Unix. Dengan menggunakan skrip ini, Anda dapat mengotomatiskan hal-hal tertentu.

Git menyertakan contoh Git Hooks  segera setelah repositori lokal dijalankan. Perlu dicatat bahwa situs-situs seperti Github atau Gitlab tidak mengizinkan penggunaannya pada contoh pertama. Itu sebabnya mereka digunakan utamanya dalam instance lokal atau privat.

Cara Menggunakan Git Hooks

Hook disimpan dalam folder .git/hooks/ dari setiap proyek yang dikloning, atau di repositori lokal yang baru dibuat. Di sana kita akan menemukan serangkaian contoh Hooks, yang merupakan titik awal yang baik.

Untuk mengaktifkan hook, Anda hanya perlu membuat file dan menyimpannya di folder .git/ hooks/. Namun, nama file sudah ditentukan oleh Git. Beberapa Hook yang dapat kita gunakan adalah:

 

Git HookGit CommandDeskripsi
applypatch-msg.samplegit amketika patch message berganti
commit-msg.samplegit commitmengelola message commit action
fsmonitor-watchman.samplelaunch watchmanmengitegrasi watchman
post-update.samplegit pushupdate semua data setelah push
pre-applypatch.samplegit amsebelum apply patch
pre-commit.samplegit commitsebelum commiting
prepare-commit-msg.samplegit commitKetika pesan commit diatur
pre-push.samplegit pushSebelum membuat push
pre-rebase.samplegit rebaseSebelum membuat pass atau merge
pre-receive.samplegit pushSaat kami push dan mendapatkan data dari repositori jarak jauh
update.samplegit pushDengan memperbarui data jarak jauh dengan push

Seperti yang terlihat, setiap Hook memiliki perintah di Git. Anda dapat menggunakan sesuai dengan kebutuhan Anda.

Contoh Git Hooks

Penggunaan Hook sangat luas, tetapi Anda perlu tahu tentang Bash dan bahasa lain seperti Python atau Ruby untuk menggunakan seluruh potensi Git secara maksimal. Berikut adalah beberapa contoh dasar untuk Git Hook:

Menampilkan Informasi Tentang Act Commit

Contoh ini menunjukkan informasi dari act commit. Buat file bernama prep-commit-msg di folder .git/hooks/ dari repositori kami. Kemudian, tulis skrip berikut:

#!/bin/sh

SOB=$(git config github.user)
grep -qs "^$SOB" "$1" || echo ". Cambio por @$SOB" >> "$1"

Lalu, simpan dan atur izin eksekusi file.

:~$ chmod +x prepare-commit-msg

Dengan Hook sederhana ini, Anda akan langsung menerima informasi yang relevan tentang commit act yang dijalankan.

Hasilkan Dokumentasi saat Perubahan Diunggah

Hook pre-push ini memungkinkan pembuatan dokumentasi kode kami jika kami memiliki generator. Setiap kali kami melakukan perubahan, dokumentasi akan dilakukan secara otomatis.

Buat pre-push di folder yang sama seperti sebelumnya dan tambahkan skrip:

#!/bin/bash

doxygen Doxyfile
git add docs/
git commit -m "Update documentation ($(date +%F@%R))"

Simpan file, dan atur izin eksekusi.

:~$ chmod +x pre-push

Temukan dan Perbaiki Trailing Whitespace dalam Commit

Git hook tipe pre-commit ini cukup mudah dibuat. Buat file bernama pre-commit dan tambahkan yang berikut:

#!/bin/bash -l

.git/hooks/pre-commit-master-no-no
if [[ $? == 1 ]]
then
exit 1
fi

.git/hooks/pre-commit-debugger
.git/hooks/pre-commit-trailing-spaces
.git/hooks/pre-commit-images
.git/hooks/pre-commit-pair

Sekarang spasi putih akan ditemukan dan diperbaiki di semua commit.

Kesimpulan

Git adalah tool penting untuk pengembang saat ini. Git hooks adalah cara terbaik untuk memperbaikinya lebih jauh! Dalam tutorial ini, kami meninjau konsep dasar mengotomatiskan proses Git dengan kait.

Membuat skrip untuk Git Hooks bisa rumit jika Anda tidak memiliki dasar yang kuat tentang pengetahuan bahasa pemrograman, seperti bash.

Untungnya di sini Anda telah mengambil langkah pertama untuk mempelajari cara menggunakan Git Hooks. Kami merekomendasikan untuk mengikuti dokumentasi resmi dan melanjutkan proses mempelajari Git Hooks.

Penulis

Author

Nadia Agatha / @nadiaagathapramesthi

Nadia merupakan penerjemah lepas sejak 2016, kini ia menjadi penerjemah untuk Hostinger. Ia gemar membaca dan melakukan penelitian seputar penerjemahan dan sosiolinguistik. Disamping itu, ia juga suka bermain dengan kucingnya dan bercengkrama bersama teman-temannya di waktu senggang.

Tutorial terkait

Ketik balasan

Komentar*

Nama*

Email*

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Jadilah bagian dari Hostinger!