git-fire: با یه دستور از همه ریپازیتوریهات بکاپ بگیر
خلاصهٔ کاملتر
git-fire یه ابزار خطفرمانه که با یه دستور از چند تا ریپازیتوری Git همزمان checkpoint یا بکاپ میگیره. کارش اینه که ریپوها رو پیدا میکنه، اگه بخوای کارِ کامیتنشده رو خودکار کامیت میکنه و بعد روی برنچها یا ریموتهای بکاپ push میکنه. با Go نوشته شده، لایسنسش MIT هست و فعلاً تو مرحلهٔ بتاست.
به گفتهٔ سازنده، مشکلی که حل میکنه اینه که push کردن دستی چند ریپو بیشتر از چیزی که فکرشو میکنیم شکست میخوره — قطعی شبکه، مشکل احراز هویت، یا اشتباه تو ترمینال. git-fire یه مسیر بازیابی قابلردیابی میده که وقتی لازمه یه حرکت هماهنگ روی چند ریپو انجام بدی، بهش تکیه کنی.
از نظر امکانات، کامیت خودکار تغییرات اختیاریه و با --skip-auto-commit میتونی فقط کارِ کامیتشده رو push کنی. تو حالت عادی force-push نمیکنه و موقع واگرایی برنچ، برنچ بکاپ میسازه. یه حالت dry-run هم داره که قبل از هر تغییری دقیقاً نشونت میده چی قراره بشه، و لاگهای ساختیافتهٔ JSON برای بررسی بعد از اجرا نگه میداره.
چند تا از دستورهای اصلیش اینشکلیه:
# پیشنمایش امن قبل از اجرا
git-fire --dry-run --path ~/projects
# اجرای checkpoint پیشفرض
git-fireریپوهای کشفشده هم تو یه رجیستری ذخیره میشن تا بین اجراها ثابت بمونن.
پروژه یه سری نکتهٔ امنیتی هم داره: git-fire هشدارهای تشخیص secret داره، ولی سازنده تأکید میکنه که مسئولیت نهایی کامیت با خودِ کاربره. توصیه میکنه secretها رو تو فایلهای ردگیریشده نذاری و به .gitignore تکیه کنی. یه حالت اضطراری هم برای نصب سریع با اسکریپت ریموت وجود داره که چون کدِ راه دور رو مستقیم اجرا میکنه، سازنده میگه بهتره اول خودِ اسکریپت رو بررسی کنی و ترجیحاً از فایلهای ریلیز با checksum استفاده کنی.
نکات کلیدی:
- git-fire با یه دستور از چند ریپازیتوری Git بکاپ میگیره
- با Go نوشته شده، متنبازه (MIT) و فعلاً بتاست
- کامیت خودکار اختیاریه و تو حالت عادی force-push نمیکنه
- حالت dry-run و لاگهای JSON برای بررسی امن قبل و بعد از اجرا داره
- هشدار تشخیص secret داره ولی مسئولیت کامیت با کاربره




