15092025 – git шмекерии

Днес един от колегите в офиса имаше интересен казус. Някой му беше омазал IaC-то и търсеше начини да си направи контрола на промените по неговата част от кода много по-затегнат.

Проблема обаче е, че това репо е споделено между два доста големи екипа и ежедневно валят по много PR-и, които той не може да следи един по един.

Та ни разпита какво решение може да има в GitHub и се присетих за това, което бях гледал преди време пак по подобен случай. git са измислили супер елегантно решение (което се поддържа от github/gitlab и сие) с много тъпо име – CODEOWNERS. To представлява специален файл в който даваме условие и owner, например:

# All Terraform files
*.tf @devops @nedko

# Everything in the devops folder and its subfolders to @devops-team and user @nedko
/devops/ @devops-team @nedko

Горното е пример за това как можете да добавите в CODEOWNERS както файлове (може и единични като pom.xml например) или по друг критерии, може и цяла директория. Добра практика е да използваме групи, а не единични акаунти, защото ако аз напусна (или HR разбере за вицовете, които разказвам в офиса) ще стане лошо.

Файла трябва да се казва CODEOWNERS и да бъде в основната директория на проекта, в .github (за github потребителите) или в docs директорията.

By Недко

Author, writer, cyclist and a passionate DevOps/QA engineer that love to share his knowledge with everyone.

Leave a Reply

Your email address will not be published. Required fields are marked *

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