حسین سلیمانی
حسین سلیمانی
خواندن ۱ دقیقه·۱ سال پیش

قلاب های گیت به زبان ساده -git hooks and pre-commit

بسم الله الرحمن الرحیم

قلاب های گیت-git hook چیست ؟


شما می توانید کدی بنویسید که در عملیات های مختلف گیت اجرا شود.مثلا کدی بنویسید که قبل از هر بار commit اجرا شود .به این کد ها git hooks می گویند.

این قلاب ها (hooks) خصوصا در پروژه های بزرگتر میتواند خیلی کاربردی باشد.میتوانند قبل از commit شدن کد ها از لحاظ امنیتی کد را چک کنند یا حتی از لحاظ زیبایی و رعایت استایل کد شما را برسی کنند.

قلاب ها(git hooks)کجا هستد؟

هر کجا که یک گیت ریپازتوری باشد یک پوشه مخفی به اسم ".git" وجود دارد که اگر وارد آن بشوید پوشه دیگری به اسم "hooks" وجود دارد که کد های مربوطه در آن است.

.git/hooks

درون پوشه hooks فایل های مختلفی وجود دارد که در تصویر زیر مشاهده می کنید.تمام این فایل ها پسوند.sample را دارند و هر فایلی این پسوند را داشته باشد اجرا نمی شود.

چگونه یک قلاب بسازیم : pre-commit

به عنوان مثال میخواهیم فایلی بسازیم که قبل از هر commit یک پیام خسته نباشید به ما بگویید.

برای اینکار در پوشه hooks یک فایل به نام pre-commit ایجاد می کنیم. توجه داشته باشید که این فایل هیچ پسوندی ندارد.

حالا می توانیم کد هایی که میخواهیم قبل از هر commit اجرا شود را در این فایل بنویسم.من قصد دارم کدی به زبان bash بنویسم که قبل از هر کامییت بگوید "good job".

#!/bin/sh باید د راینجا زبان مورد نظر را انتخاب کنید
echo &quotgood job&quot کدی که قبل از هر کامییت اجرا میشود

حالا برای تست یک commit انجام میدهم و همانطور که در تصویر زیر می بینید قبل از کامیت پیام good job را به من نشان می دهد.


git hookspre commitgitgithubقلاب های گیت
برنامه نویس hossien014.github.io
شاید از این پست‌ها خوشتان بیاید