ForHosting KIT · أدوات المطورين

مرمّز Git Base85

تصبح كلمة hello سطر Git Base85 هو EXk~0{ZvX%Q، والحرف E في أوله يعني أن السطر يحمل خمسة بايتات. هذه هي اللهجة التي يستخدمها Git في الرقع الثنائية، وهي تختلف عن Ascii85 من Adobe. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
hello
تحصل على
النتيجة
EXk~0{ZvX%Q
وضع الحساب
Encode
تنسيق الإخراج
Text
المتغيّر
git_base85

يخزّن Git تغييرات الملفات الثنائية داخل فروق موحّدة بلهجة Base85 خاصة به، لا Adobe Ascii85 ولا Base64 البسيط. يحتاج المطوّرون الذين يفحصون أقسام GIT binary patch أو ينقّحون إخفاقات apply أو يبنون أدوات متوافقة إلى محوّل يتكلّم تلك الأبجدية وشكل السطر تمامًا.

ترميز النص أو hex إلى أسطر Git Base85

لكل كتلة يكتب بادئة طول (A تعني بايتًا واحدًا، وB اثنين، حتى Z لستة وعشرين، ثم a لسبعة وعشرين حتى z لاثنين وخمسين) ويوسّع كل مجموعة من أربعة بايتات إلى خمسة أحرف من أبجدية Git ذات الخمسة وثمانين رمزًا: أرقام وحروف كبيرة وصغيرة، ومجموعة علامات ترقيم تحذف علامات الاقتباس والفواصل والنقاط والشرطات المائلة والمعكوسة لتبقى الرقع ملائمة للبريد والقشرة. تُحشى المجموعة النهائية القصيرة بأصفار للحساب ثم تُقتطع إلى العدد الصحيح من كتل الخمس أحرف حتى يستعيد المفكّك عدد البايتات الدقيق من البادئة وحدها.

الإدخال الفارغ صالح وينتج نتيجة فارغة بصفر بايت وصفر أسطر. المسار حسابي بحت—بلا شبكة ولا ملح عشوائي ولا ساعة—لذلك تُنتج المدخلات المتطابقة دائمًا أجسام Base85 متطابقة لتجهيزات التكامل المستمر الذهبية.

فك أسطر بادئة الطول ورفض الإدخال غير الصالح

عيّن mode إلى decode وضع سطرًا واحدًا أو أكثر من Git Base85 في text. تُتجاهل الأسطر الفارغة حتى تتمكّن من لصق جزء منسوخ من رقعة أكبر. بعد البادئة يجب أن يكون الباقي خمسة أضعاف عدد مجموعات الأربعة بايتات اللازمة للعدد المُعلَن—فزيادة الرموز أو نقصها خطأ وليست اقتطاعًا صامتًا.

يجب أن يقع كل حرف مرمَّز ضمن أبجدية Git؛ ورمز مستعار من Adobe Ascii85 (مثل علامة أصغر من منفردة أو z لسلسلة أصفار لا يستخدمها Git) يفشل فورًا حتى لا تُطبَّق لهجة أجنبية خطأً كجسم رقعة ثنائية. يجمع الفكّ الناجح كل الأسطر بالترتيب في مخزن بايتات واحد.

كيف يختلف Git Base85 عن Ascii85

كثيرًا ما يُبحث عن مرمّز Base85 بعد رؤية بيانات ثنائية في git diff، فيُهبط على أدوات Adobe Ascii85 بأبجدية مختلفة وأغلفة اختيارية less-than-tilde واختصار z لسلاسل الأصفار. لهجة Git مختلفة عمدًا: خمسة وثمانون رمزًا ثابتًا تبدأ بالرقم صفر، وبادئات طول إلزامية لكل سطر، بلا محدّدات Adobe وبلا رمز z للضغط. تخدم هذه الصفحة نية البحث الخاصة بـ Git—مرمّز git base85، رقعة ثنائية base85، فك git base85—ولا تنافس صفحة Ascii85 عامة.

استخدم الودجت المجاني في المتصفح لتحويل عيّنات قصيرة أثناء قراءة رقعة أو تعليم فروق ثنائية أو كتابة أداة apply مخصّصة. يرمّز سير عمل نموذجي تفريغ hex لكتلة ثنائية صغيرة لتجهيز اختبار، ويُثبّت الأسطر ذات البادئة بجانب نتيجة apply متوقعة، ويفكّ في كل تشغيل لخط الأنابيب لاصطياد انجراف الأبجدية. سير آخر يلصق أسطر البيانات فقط من GIT binary patch (متجاوزًا ترويسة literal N إن عُرف الحجم) ويستعيد البايتات للفحص.

أبقِ الحمولات متواضعة—هذا عنصر parse من المستوى A وليس خادم packfile—وثبّت سلاسل result في الذهب لأن الخوارزمية حتمية تمامًا عبر العزلات واللغات التي تنفّذ الجدول نفسه.

تأليف تجهيزات اختبار متوافقة

رمّز تسلسلات بايتات معروفة إلى أسطر Git Base85 لاختبارات وحدات أدوات apply وروبوتات الدمج والوثائق التي يجب أن تطابق أبجدية Git وبادئات الطول.

كيف أرمّز نصًا إلى Git Base85؟

يحتوي حقل result على أسطر مفصولة بأسطر جديدة تبدأ كل منها بحرف طول A–z، وbytes هو طول UTF-8.

كيف أفك أسطر Base85 من رقعة Git ثنائية؟

عيّن mode إلى decode وضع الأسطر ذات بادئة الطول في text.

ما الذي يميّز Git Base85 عن Adobe Ascii85؟

يستخدم Git أبجدية من 85 حرفًا مختلفة، ويتطلّب بادئة طول لكل سطر (A–Z، a–z)، ولا يستخدم محدّدات <~ ~>، ولا ينفّذ اختصار z للأصفار في Adobe.

ماذا يعني الحرف الأول في كل سطر من Git Base85؟

هو طول السطر بالبايتات: A تعني واحدًا وB اثنين حتى Z التي تعني 26، ثم a تعني 27 حتى z التي تعني 52. ولا يحمل السطر أكثر من 52 بايتًا، ويستعيد فك الترميز العدد الدقيق من هذا الحرف.

هل يمكنني ترميز بايتات خام بدل النص؟

نعم. اختر خيار النظام السداسي عشر وأدخل سلسلة سداسية عشرية زوجية الطول، ويُسمح بالمسافات والشرطات السفلية. عندها تُرمَّز البايتات مباشرة دون المرور بنص UTF-8.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/enc/base85-git

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/enc/base85-git \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello"}'
{
  "text": "hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.base85_git",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

يبدأ كل سطر بيانات بحرف بادئة طول—من A إلى Z لبايت واحد إلى ستة وعشرين بايتًا مفكوكًا، ومن a إلى z لسبعة وعشرين إلى اثنين وخمسين—يتبعه خمسة رموز من الأبجدية لكل أربعة بايتات من الحمولة. تُرمِّز هذه القدرة نص UTF-8 أو بايتات ست عشرية إلى أسطر Git Base85، وتفكّها مع رفض الرموز غير القانونية وبادئات الطول الخاطئة وأحجام المجموعات غير المتطابقة عبر invalid_input. يشترك ودجت المتصفح المجاني وواجهة API المدفوعة مسبقًا في وحدة حتمية واحدة، فلا تختلف التجهيزات عن الإنتاج. تكلّف استدعاءات API الناجحة $0.002 لكل عنصر؛ ولا تُحسب إخفاقات التحقق.

ترميز النص أو hex إلى أسطر Git Base85

أرسل جسم JSON يتضمن الحقل النصّي الإلزامي text واترك mode على encode، أو عيّن mode إلى encode صراحةً. القيمة الافتراضية لـ format هي text: يرمّز المحرك سلسلتك إلى UTF-8 ثم يمرّ على البايتات بكتل لا تتجاوز اثنين وخمسين ثُمانيًّا—وهو الحد الأقصى نفسه الذي يستخدمه Git في كل سطر رقعة ثنائية. عيّن format إلى hex عندما تكون الحمولة ثنائية خامًا: يجب أن يكون text سلسلة ست عشرية بطول زوجي (يُسمح بالمسافات والشرطات السفلية)، وتُرمَّز تلك البايتات بلا طبقة UTF-8. تتضمّن الاستجابة result (أسطر مفصولة بأسطر جديدة) وmode encode وformat وvariant git_base85 وbytes (طول الحمولة قبل الترميز) وlines (أسطر الخرج غير الفارغة).

فك أسطر بادئة الطول ورفض الإدخال غير الصالح

يجب أن يبدأ كل سطر غير فارغ بحرف طول صالح؛ وأي حرف أول آخر يفشل بـ invalid_input مع ذكر قاعدة بادئة الطول. مع format text (الافتراضي) تُفسَّر تلك البايتات كـ UTF-8 بمفكّك حاسم: التسلسلات غير الصالحة ترفع invalid_input بدل أحرف استبدال تفسد الفروق اللاحقة. مع format hex تكون النتيجة سلسلة hex صغيرة للبايتات المستعادة، وهو الخيار العملي عندما تكون الحمولة بيانات literal مضغوطة بـ zlib من GIT binary patch حقيقي لا نصًّا مقروءًا. تعيد الاستجابة mode decode وformat وvariant git_base85 وbytes كالطول المفكوك وlines كعدد أسطر الإدخال غير الفارغة. لا تُفوتر إخفاقات التحقق على API المدفوعة مسبقًا، لذا فحص لصق مشبوه آمن للمشغّلين ورخيص للنصوص التي تربط الدمج بنجاح التحليل.

الفرق عن Ascii85 واستخدام API

استخدم API KIT المدفوعة مسبقًا بسعر $0.002 لكل عنصر ناجح عندما يحتاج خلفية أو روبوت أو مهمة تكامل مستمر إلى إصدار أو التحقق من أجسام Git Base85 تحت الرصيد؛ والتحقق الفاشل لا يستهلك ذلك الرصيد أبدًا.

فحص أجسام GIT binary patch

افكك أسطر Base85 ذات بادئة الطول المنسوخة من git diff --binary لتفريغ الحمولة الحرفية المضغوطة بالست عشري دون تطبيق الرقعة كاملة.

اكتشاف خلط اللهجات في CI

ارفض Adobe Ascii85 أو اللصق التالف بـ invalid_input قبل أن يعامل خط الأنابيب Base85 أجنبيًا كجسم رقعة ثنائية صالح.

ماذا يحدث عند إدخال Base85 غير صالح؟

يفشل الفك بـ invalid_input عند بادئات طول خاطئة أو أحرف خارج أبجدية Git أو أحجام مجموعات خاطئة أو UTF-8 غير صالح عندما يكون format هو text. لا تُحسب إخفاقات التحقق.

هل مرمّز Git Base85 مجاني؟

تعمل أداة المتصفح مجانًا على جهازك. تستدعي API رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل عنصر ناجح؛ واستجابات invalid_input لا تستهلك الرصيد.

اطّلع على توثيق KIT الكامل ←