git-bug: متتبع أخطاء يعيش داخل مستودع Git الخاص بك
يحفظ git-bug تقارير الأخطاء ككائنات Git أصلية داخل المستودع نفسه، لذا تتزامن مع أوامر git push وpull المعتادة وتعمل دون اتصال بالإنترنت. ولديه جسور إلى GitHub وGitLab وJira وLaunchpad.
git-bug أداة مفتوحة المصدر لتتبع الأخطاء تحفظ التقارير داخل مستودع Git الخاص بالمشروع. تُخزَّن الأخطاء والتعليقات وتغييرات الحالة ككائنات Git أصلية، فلا حاجة إلى خادم منفصل أو قاعدة بيانات: يكفي الفريق مستودعاً بعيداً يستخدمه أصلاً للشيفرة. وقد وصل المشروع إلى الصفحة الرئيسية لموقع Hacker News.
يجري التعامل مع الأخطاء كما اعتاد المطورون التعامل مع الشيفرة. يرسل الأمر git bug push التقارير والتعليقات الجديدة إلى المستودع البعيد، ويعيد git bug pull ما كتبه أعضاء الفريق. كل شيء موجود في النسخة المحلية، لذا يعمل المتتبع دون اتصال بالإنترنت أيضاً، ويستغرق عرض القائمة أو فتح خطأ أجزاء من الثانية. ولا تُضاف ملفات إلى شجرة العمل، فيبقى محتوى المستودع كما هو.
متتبع بلا ارتباط بمزوّد واحد
القيمة هنا ليست في السهولة وحدها بل في الصمود أيضاً. إذا تعطّلت خدمة الاستضافة أو أُغلقت نهائياً، فإن كامل تاريخ أخطاء المشروع موجود أصلاً على قرص كل مطور. صيغة التخزين موصوفة رسمياً في مواصفة git-bug منفصلة تغطي صيغة كيانات DAG والهويات وكيان الخطأ، لذا يمكن قراءة البيانات دون البرنامج الأصلي.
سطر الأوامر والطرفية والويب
تُنشأ الهوية بالأمر git bug user create، ويُفتح خطأ جديد بالأمر git bug add الذي يشغّل المحرر المعتاد لكتابة العنوان والرسالة. يعرض الأمر git bug ls القائمة ويفهم لغة استعلامات مثل status:open sort:edit إضافة إلى البحث النصي. وتتيح الواجهة الطرفية التفاعلية git bug termui استعراض الأخطاء وتحريرها في مكانها. أما الأمر git bug webui فيشغّل واجهة ويب لاستعراض الأخطاء والبحث فيها وتصفيتها والتعليق وتحرير العناوين والوسوم والحالة؛ وتعمل أيضاً كمتصفح للشيفرة مع شجرة ملفات وإبراز للصياغة وسجل الالتزامات والفروقات. تأتي الواجهة مضمّنة في الملف التنفيذي نفسه بلغة Go، ويقدّمها خادم HTTP محلي، وتتحدث إلى الخادم عبر GraphQL API.
جسور إلى متتبعات أخرى
تتيح الجسور استيراد الأخطاء وتصديرها مع GitHub وGitLab وJira وLaunchpad. تُضبط الجسور بالأمر git bug bridge new وتتزامن عبر git bug bridge pull و git bug bridge push، فيمكن للفريق الإبقاء على متتبع مستضاف والعمل محلياً في الوقت نفسه. أما البوابة العامة على الويب التي ستستقبل بلاغات من الخارج فلا تزال قيد التطوير. يُنشر المشروع برخصة GPLv3 أو أحدث.
SiTech — تطوير ويب مدعوم بالذكاء الاصطناعي
نبني مواقع سريعة وعصرية وندمج الذكاء الاصطناعي في سير عمل الشركات. لديك مشروع أو سؤال؟ يسعدنا مساعدتك.