Hook nedir?
- Git kursu
- İleri seviye
- Ders 21/56
- 4 dk
Hook'ın olay tetikleyici betik olduğunu öğrenirsin.
Git hook nedir?
Git hook, Git'teki belirli olaylar gerçekleştiğinde otomatik çalışan betiktir. Bu betikler depo içindeki .git/hooks dizininde bulunur ve commit gibi işlemlerden önce veya sonra tetiklenebilir. Böylece tekrarlanan kontrolleri elle yapmak yerine otomatikleştirebilirsin.
.git/hooks/
pre-commit
commit-msgHook dosyalarının konumu
Git hook dosyaları varsayılan olarak deponun .git/hooks dizininde bulunur. Depo oluşturulduğunda (git init) bu dizine .sample uzantılı örnek dosyalar eklenir. Bir hook'u etkinleştirmek için ilgili örnek dosyanın uzantısını kaldırıp çalıştırılabilir bir betik hazırlayabilirsin.
.git/hooks/pre-commit.sample
.git/hooks/commit-msg.sampleHook'lar yerel depoda çalışır; başka bir kullanıcı depoyu klonladığında bu betikler otomatik olarak paylaşılmaz.
Uygulama Hook dosyası yolunu oluştur
hookPath değişkenine .git/hooks dizinindeki pre-commit dosyasının yolunu ata. Ardından yolu ekrana yazdır.
Başlangıç kodu
// Hook dosyasının yolunu tanımla
const hookPath = "";
// Yolu yazdırÖrnek çözüm
const hookPath = ".git/hooks/pre-commit";
console.log(hookPath);Beklenen çıktı
.git/hooks/pre-commit
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Git hook'larının temel görevi nedir?
- Depodaki tüm dalları otomatik silmek
- Commit geçmişini şifrelemek
- Uzak depoyu yerel depoya dönüştürmek
- Belirli Git olaylarında betik çalıştırmak Doğru cevap
Açıklama: Hook'lar belirli Git olaylarına bağlanan betiklerdir ve ilgili olay gerçekleştiğinde otomatik çalışırlar.
2 Hook dizinini tamamla
.git/____/pre-commit
.git/hooks/pre-commit
Açıklama: Git hook dosyaları varsayılan olarak .git/hooks dizininde saklanır.
3 Hook temel kavramları
| Kavram | Anlamı |
|---|---|
Hook |
Olayla tetiklenen betik |
.git/hooks |
Hook dosyalarının dizini |
Event |
Betiği başlatan olay |
.sample |
Örnek hook uzantısı |