یک اسکریپت bash بنویسید که همه تغییرات را استیج کند، با پیامی که شامل تاریخ و زمان است کامیت بگیرد و سپس به یک شاخهٔ مشخص (یا شاخهٔ فعلی به‌عنوان پیش‌فرض) پوش کند و اگر تغییری برای کامیت وجود نداشت پیام مناسب نمایش دهد.

7.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:54

0.0

برای حل این مسئله در اسکریپت ابتدا با git rev-parse --is-inside-work-tree بررسی کنید که در مخزن گیت هستید، سپس با git status --porcelain چک کنید که تغییراتی برای ثبت وجود دارد؛ اگر نیست پیام مناسب چاپ کنید و خروجی موفق بدهید. در صورت وجود تغییرات از git add -A برای استیج استفاده کنید، و با git commit -m "Auto-commit: $(date '+%Y-%m-%d %H:%M:%S')" کامیت بگیرید (می‌توانید پیام کامیت یا نام شاخه را به‌عنوان آرگومان قبول کنید). در نهایت با git push origin پوش کنید و خطاها را با چک کردن کد خروجی هر فرمان یا استفاده از set -e مدیریت کنید؛ نکات مفید شامل گرفتن شاخهٔ فعلی با git rev-parse --abbrev-ref HEAD و نمایش لاگ مختصر پس از پوش برای تأیید است.

توسط پژوهشگر در 202 روز قبل ساعت 02:54
دسته بندی ها: Bash Scripting Bash Scripting for beginner
nima در 202 روز قبل ساعت 08:09

برای شروع، بررسی کنید که در یک مخزن گیت هستید (مثلاً با اجرای git rev-parse --is-inside-work-tree). برای افزایش پایداری، از set -euo pipefail استفاده کنید تا خطاها به‌طور صریح مدیریت شوند. اگر git status --porcelain نشان دهد تغییراتی وجود ندارد، پیام مناسب چاپ کنید و خروجی موفق بدهید. همچنین امکان پذیر کردن نام شاخه به‌عنوان آرگومان و نمایش یک لاگ کوتاه پس از push به کاربر کمک می‌کند.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری