Day 34: Git Hook

Опубликовано: 22 Июль 2026
на канале: Otter Tech
13
0

🏷️ Day 34: Git Hook (Post-Update) | 100 Days of DevOps

Welcome to Day 34 of the 100 Days of DevOps series! In this lab, you’ll learn how to automate release tagging using a Git post-update hook—a powerful technique used in real-world CI/CD pipelines.

📌 Lab Objective:
Merge branches and configure a Git hook to automatically create release tags on push.

🛠️ Task Requirements:

Repository: /usr/src/kodekloudrepos/news
Remote repo: /opt/news.git
Work as user: natasha
Merge feature → master
Create a post-update hook
Tag format: release-YYYY-MM-DD (current date)
Trigger hook and verify tag

💻 Step-by-Step Solution:

🔹 1. Switch to natasha & Navigate

su - natasha
cd /usr/src/kodekloudrepos/news

🔹 2. Merge Feature into Master

git checkout master
git merge feature

🔹 3. Create Post-Update Hook (Server Side)

sudo -i
cd /opt/news.git/hooks
vi post-update

🔧 Add Script:

#!/bin/bash
DATE=$(date +%F)
git tag release-$DATE

👉 Save and exit (:wq)

🔹 4. Make Hook Executable

chmod +x post-update

🔹 5. Trigger Hook

exit
cd /usr/src/kodekloudrepos/news
git push origin master

🔹 6. Verify Tag

cd /opt/news.git
git tag

👉 Expected output:

release-2026-04-23

✅ Expected Outcome:

Feature branch merged into master
Post-update hook created and working
Release tag auto-generated with current date
Tag visible in repository

📚 What You’ll Learn:

Git hooks (server-side automation)
Difference between client & server hooks
Automating release tagging
Real-world Git workflows in DevOps

🌟 Why This Lab Matters:
Automating tasks like tagging ensures consistency, reduces manual effort, and is widely used in CI/CD pipelines for version control and releases.

🎯 Series: 100 Days of DevOps
Master Git, automation, and real-world DevOps practices step by step.

🔔 Don’t forget to like, share, and subscribe for more tutorials from OtterTech!

#DevOps #Git #GitHooks #Automation #CI_CD #VersionControl #OpenSource #SoftwareDevelopment #Nautilus #100DaysOfDevOps #OtterTech #Day34