یک اسکریپت Node.js بنویسید که تغییرات را در یک مخزن Git بهصورت خودکار استیج، commit و push کند و پیام commit را از آرگومان خط فرمان بگیرد.
2.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:22 0.0
برای حل این سوال از کتابخانه ساده simple-git استفاده کنید (npm install simple-git). در فایل JavaScript پیام commit را از process.argv بگیرید، با simple-git وضعیت مخزن را بررسی کنید (status)، اگر فایل تغییر کرده بود همه را add کنید (add('.'))، سپس commit با پیام گرفتهشده و در نهایت push به شاخه جاری (با استفاده از status.current) انجام دهید. خطاها را مدیریت کنید و پیام مناسب برای نبودن تغییرات یا خطای شبکه چاپ کنید. بهعنوان راه جایگزین میتوانید از child_process.exec برای اجرای دستورات git استفاده کنید؛ نکتهها: اسکریپت را در پوشه ریشه مخزن اجرا کنید، ابتدا در یک مخزن آزمون امتحان کنید و از تنظیمات احراز هویت (SSH/credential) اطمینان حاصل نمایید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
این رویکرد با simple-git نسبتاً ساده است؛ پیام کامیت را از آرگومان خط فرمان بگیرید و وضعیت مخزن را بررسی کنید. اگر تغییراتی وجود داشته باشد، همه را با add('.') اضافه کرده و سپس commit با پیام ورودی انجام دهید و در نهایت به شاخه جاری push کنید. اگر تغییر وجود ندارد، پیامی روشن چاپ کنید و از ادامه کار خودداری کنید؛ همچنین خطاهای شبکه را با استفاده از try/catch مدیریت کنید. حتماً ابتدا در مخزن آزمایشی تست کنید و از صحت تنظیمات احراز هویت (SSH/credentials) مطمئن شوید.
گزارش