لديك استفسار؟

اكتب ما يدور على بالك هنا، أو كلمات مفتاحية للموضوع أو الدرس الذي قد تكون تبحث عنه

تطبيق patch لتصحيح الإصدارات

ما هو الpatch وفائدته؟

الباتش patch هو نظام لتصحيح أو تعديل ملف لملف جديد، موجود في الأعداد من البرامج والألعاب، وحتى في إصدارات الترجمة. الهدف منه في أغلب الحالات هو صناعة نسخة معدلة V2 لإصدار كان بترجمته إخطاء، يكون ملف صغير الحجم، يُعدل الملف القديم، بدلًا من تحميل ملف جديد كاملًا بحجم الكامل.

آلية عمل الpatch

ماسحًا للملفات، يقوم بالPatch بتوليد ملف diff يحوى بيانات الفرق بين الملفين V1 & V2 بعدها يقوم المتابع الذي يملك V1 بتحميل الباتش مع ملف الdiff. يقوم المشاهد بتطبيق الباتش الذي يولد بدوره ملف الحلقة الجديدة الV2.

متطلبات الpatch وأدواته

الطريقة الشائعة في الفانسب تكون عن طريق استخدام patcher اسمه xdelta، لذا تحتاج لxdelta

التطبيق على Windows

عادة: الطريقة بالGUI

يقوم المنتج بتوفير ملف diff وتوفير الPatch.exe (اسمه xdelta) وملف .bat وهذا الملف هل الذي يتولى الأمور. أي يحمل المشاهد الثلاث ملفات المذكورة:

  • ملف الفارق يختلف اسمه من فريق لآخر .diff
  • xdelta.exe or patch.exe
  • file.bat

تضع الملفات كلها في نفس المجلد الذي فيه الإصدار القديم، تضغط على الملف الذي يحمل اسم به(امتداده) .bat وسظهر لك نافذة سوداء لعدة ثواني، بعدها ستجد الملف الجديد في نفس المجلد قد ولد.

في حالات استثنائية: قد تضطر للCLI

قد لا يوفر الفريق سوى ملف الdiff أو ملف الdiff مع الpatcher. في هذه الحالة قم بتحميل ملف الdiff الذي وفره الفريق، وإن لم يوفروا الpatcher حمل xdelta من الموقع الرسمي هنا، أو صفحة التحميل مباشرة من هنا  إن لم تكت تعلم إذا كان نظام 32 بت أم 64 بت، حمل الملف الذي به x86-32 هذا سيعمل على أي نظام كان، بعدها ضعهما مع الملف القديم في نفس المجلد افتح الcmd
و اكتب cd path_to file حيث تكون path_to file المسار الذي يحوي الملفات المذكورة
مثال:

cd C:\Users\mohamed\Downloads

بعدها في نافذة الcmd اكتب

Patch.exe-d -s old_filename.mkv deltafile.xdelta new_filename.mkv

أو

Patch.exe -d -s Oldfilename.mkv Difference.diff Newfile.mkv


أو

xdelta.exe -d -s Oldfilename.mkv deltafile.xdelta Newfile.mkv
أو
xdelta.exe -d -s Oldfilename.mkv Difference.diff Newfile.mkv

xdelta.exe/ patch.exe اسم الملف الذي حملته
Oldfilename.mkv يجب أن يكون اسم الملف القديم الذي أصدره الفريق
Difference.diff الملف الذي وفره الفريق ويجب أن تكتب الاسم كما هو
Newfile.mkv هنا تكتب أي اسم وسيكون اسم ملفك الجديد

هذا إذا استخدمت الباتش كملف بورتابل، أما إذا نصبت الباتش يكون الأمر:

xdelta3 -d -s old_filename.mkv difference.diff new_filename.mkv

أو

xdelta3 -d -s old_filename.mkv deltafile.xdelta new_filename.mkv

وسيولد لك الملف الجديد.

التطبيق على Linux

سنفترض في هذه المرحلة أنك مستخدم متوسط المستوى، قبل أي شيء رجع كل ما تمت كتابته في الأعلى وحتى التعليمات للويندوز لتفهم سير الأمور ثم نصب الxdelta
على أنظمة الredhat\cenots\fedora

yum install xdelta

أو على أنظمة ubuntu/ debian

sudo apt-get install xdelta

بعدها ضع ملف الdiff مع الحلقة في نفس المجلد وطبق الأمر ذاته، وعلى اعتبتر انك نصبت النسخة الحالية أثناء كتابة هذه الصفحة وهيxdelta3 فسيكون الأمر

xdelta3 -d -s old_filename.mkv difference.diff new_filename.mkv

أو

xdelta3 -d -s old_filename.mkv deltafile.xdelta new_filename.mkv

وسيولد الملف الجديد.

التطبيق على Mac OS X

التخطي إلى شريط الأدوات