هذا هو برنامج تصحيح الأوامر الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
باتشر - أداة صيانة التصحيح
موجز
بتشر [-n ] [ ]
يحرر كجزء من التصحيح .
patcher -r تحديث التصحيح الحالي.
patcher [-f] -b إرجاع رقعة واحدة إلى التصحيح السابق.
الرقاع [-f] -ب
عد في السلسلة حتى وصلنا .
بتشر [-f] -b
ارجع للوراء بقع في سلسلة.
patcher -a قم بتطبيق التصحيح التالي في السلسلة.
بتشر -a قم بتطبيق جميع التصحيحات من السلسلة حتى وصلنا إلى .
بتشر -a تقدم بعد ذلك بقع من السلسلة.
بتشر -n [-p ] -أنا
استيراد ملف مقارنة خارجي في التصحيح . يجرد المستويات
من أسماء الدليل. يرجى ملاحظة أن التصحيح يسمح بـ "-p1"، لكننا
فقط "-p 1".
بتشر [-f] [-n ] [-p ] -أنا
استيراد ملف مقارنة خارجي في التصحيح . يجرد المستويات
من أسماء الدليل. يرجى ملاحظة أن التصحيح يسمح بـ "-p1"، لكننا
فقط "-p 1".
CONCEPT
Patcher هو برنامج نصي Perl أستخدمه لإدارة التصحيحات. إنها قوية جدًا وسهلة الاستخدام
استخدام وسريع.
يقوم Patcher بتتبع الملفات التي قمت بتغييرها. يمكنه بعد ذلك إنشاء تصحيحات من ملفك
التغييرات ، لا داعي للتعامل مع أداة الفرق يدويًا.
يمكن أن يكون لديك أكثر من سجل واحد لتغييرات الملف ، ونحن نسمي هذا التصحيح. التصحيح هو
شيء أن التصحيح(1) يمكن تطبيق الأمر.
يمكن تكديس التصحيحات في سلسلة ، فهي تحدد الترتيب الذي يجب أن تطبقه. باتشر
يحتفظ بمعلومات السلسلة بالإضافة إلى المعلومات التي تم تطبيقها وأيها
لا.
الوصف
في وقت لاحق سيكون لدينا جولة سير ، لكن اسمحوا لي أولاً أن أشرح أوضاع التشغيل الأساسية لـ
بتشر:
تحرير ملفات
عند استدعاء patcher باسم ملف، سيقوم patch بعمل نسخة احتياطية من هذا الملف (إذا كان الملف
موجود). يمكنك الآن إنشاء الملف أو تغييره. في وقت لاحق يمكنك أن تطلب من الباتشر إنشاء ملف
فرق موحد مع كل ما تبذلونه من التغييرات.
خلق موحد فرق
فقط اتصل بـ "patcher -r" وستحصل على فرق موحد لكل ما تبذلونه من الإضافات والتعديلات
والحذف. سيتم تخزين الفرق في .patches/ .رقعة. إنه في شكل أن
يسمح للتطبيق المباشر عبر التصحيح(1) أو بالطبع عبر "patcher -i".
عندما تفعل "patcher -r" فإن ملف .patches/ الخاص بك سيتم تحديث ملف .patch.
الرجوع خارج a التصحيح
لإلغاء التغييرات والانتقال إلى الإصدار السابق ، فقط أدخل "patcher -b". باتشر
سوف نتأكد من أنك لا تفقد تغييراتك عن طريق مطالبتك بإنشاء فرق if
لقد تغير شيء ما منذ التحديث الأخير. يمكنك استخدام باتشر -f (أو --force) للذهاب
العودة على أي حال.
يمكنك التراجع عن أكثر من تصحيح عن طريق تحديد رقم واسم التصحيح بعد -b.
أعد التقديم a التصحيح
مع "patcher -n -a" يمكن تطبيق تصحيح مُدار موجود بالفعل
التصحيح المُدار هو تصحيح تم تخزينه بالفعل في دليل .patches ويتم ذكره
في ملف التصحيحات / السلسلة. يقوم Patcher باختبار ما إذا كان التصحيح سيطبق بدون مشكلة و
يطبقها. إذا تم رفض التصحيح ، يمكنك استخدام -f (أو --force) لتطبيق التصحيح
على أي حال.
يمكنك تطبيق أكثر من رقعة واحدة إما عن طريق تحديد رقم اسم التصحيح بعد -a.
استيراد خارجي بقع
في بعض الأحيان يكون لديك رقعة خارجية. هذا هو عكس التصحيح المُدار ، التصحيح هو
غير مخزنة في الدليل .patches. ومن خلال استيراده، سيصبح تصحيحًا مُدارًا.
قم باستيراد التصحيح ببساطة باستخدام -i . يمكنك استخدام -p لتحديد الدليل
مستوى مشابه لـ -p خيار التصحيح(1). لكن من فضلك ضع في اعتبارك أننا بحاجة إلى ملف
المسافة بين -p والرقم.
عادةً ما يتم استيراد التصحيحات النظيفة فقط. لاستيراد التصحيح الذي ينشئ رفض الاستخدام
-f (أو - القوة). سترى قائمة بالملفات التي لم يتم تطبيق التصحيح فيها بشكل نظيف، قم بإصلاح
المشاكل يدويا.
يمكنك لاحقًا استخدام "patcher -r" لإنشاء رقعة نظيفة.
تركيب
فقط ضع برنامج patcher في مكان ما في طريقك. هذا كل شئ.
يتطلب برنامج Patcher لكل مشروع دليلاً خاصًا واحدًا يسمى ".patches". فإنه سوف
ابحث عن هذا الدليل. إذا لم يكن موجودًا ، يقوم الباتشر بإنشائه تلقائيًا.
الداخلية
كل عمل يحدث مع شجرة دليل واحدة. يتم استدعاء جميع الأوامر داخل جذر
تلك الشجرة (TODO: هذا يمكن ويجب أن يتغير). يدير Patcher "كومة" من التصحيحات.
كل تصحيح عبارة عن مجموعة تغييرات مقابل الشجرة الأساسية بالإضافة إلى التصحيحات السابقة.
يتم سرد كافة التصحيحات ، بالترتيب ، في ملف ". تصحيحات / سلسلة". يضيف Patcher تصحيحات إلى ملفات
هذا الملف، لكنه لا يحذف الإدخالات مطلقًا. يمكنك تحرير هذا الملف باستخدام محرر النصوص، ولكن
يرجى القيام بذلك فقط إذا كان التصحيح الذي قمت بحذفه غير مطبق حاليًا.
يتم سرد أية تصحيحات مطبقة حاليًا في ملف ". تصحيحات / مطبقة". إدارة الرقاع
هذا الملف، ليست هناك حاجة لتحرير هذا الملف يدويًا.
يؤثر كل تصحيح على عدد من الملفات الموجودة في الشجرة. يتم سرد هذه الملفات في قائمة الملفات
اسمه ". بقع / ملفات.". باتشر يديرها. عند التراجع عن التصحيح ، فإن هذا الملف سيفعل
تم الحذف. أو بعبارة أخرى ، هذا الملف موجود فقط للتصحيحات المطبقة. يتم استخدامه فقط من قبل
"بتشر-r".
يتم وضع التصحيحات في ملفات ".patches / *. patch". هم دائما فرق موحدة مع -p1
مثل patchlevel. يمكنك نسخ ملف التصحيح(1) فائدة قراءتها دون
مشاكل.
اختياريًا ، يمكنك وضع أوصاف للتصحيحات في الملفات المسماة ".patches / *. txt".
لذلك، بالنسبة لتصحيح معين "my-first-patch"، سيكون ما يلي موجودًا:
- إدخال "my-first-patch.patch" في ".patches/series".
- إدخال "my-first-patch" في ".patches/applied" (إذا كان مطبقًا حاليًا)
- ملف ".patches / my-first-patch.files" يحتوي على أسماء الملفات التي-
التصحيح الأول يعدل أو يضيف أو يزيل
- ملف ".patches / my-first-patch.patch" ، وهو اختلاف السياق ، وهو في الأساس الملف الرئيسي
إخراج الرقاع.
- اختياريًا ، ملف ".patches / my-first-patch.txt" يحتوي على سجل التغيير الخاص بالتصحيح ،
الوصف أو أي شيء تضعه هناك.
المشي
لنبدأ.
اذهب إلى / usr / src / linux (أو في أي مكان).
لنبدأ الآن بتغيير بعض الملفات المصدر:
patcher -n my-patch kernel/sched.c
حسنًا، قام برنامج patcher بنسخ kernel/sched.c إلى kernel/sched.c~my-patch لك، وقد قام البرنامج أيضًا
قام ببعض السحر في دليل .patches ، والذي لن يهمنا الآن.
الآن قم بتحرير بت kernel/sched.ca.
نحن الآن جاهزون لتوثيق التصحيح:
إنشاء بقع / my-patch.txt
الآن قم بإنشاء تصحيح:
بتشر -ر
سيؤدي هذا إلى إنشاء ".patches/my-patch.patch". نلقي نظرة على هذا الملف.
الآن نقوم بإزالة التغيير الذي أجريناه على Schedule.c من خلال الرجوع للخلف:
بتشر-ب
انظر إلى أين نحن الآن:
بتشر -s
الآن دعنا نضيف ملفًا آخر إلى ملف التصحيح الخاص بي. أولاً نعيد تطبيق الرقعة:
بتشر -a
الآن قم بتحرير الملف الثاني:
نواة بتشر / printk.c
لاحظ أننا هنا أعطينا patcher وسيطة واحدة، بدون خيارات سطر الأوامر. هذا
يخبر برنامج patcher دائمًا بإضافة ملف آخر إلى التصحيح الحالي.
تحرير kernel / printk.c
قم بتحديث التصحيح الخاص بي:
بتشر -ر
ابدأ الآن بالتصحيح الثاني:
patcher -n my-Second-patch kernel/sched.c
هنا لدينا اسم ملف في سطر الأوامر لـ patcher ، لذلك نقوم بتحرير الملف. لكننا الآن
حدد اسم تصحيح مع -n. قال هذا الرقاع لإنشاء رقعة جديدة. الآن باتشر
يدير رقعتين ، "رقعة" و "رقعة الثانية".
قم بتحرير kernel / Sched.c ، لإجراء بعض التغييرات على التصحيح الثاني الخاص بي
إنشاء التصحيح الثاني الخاص بي:
بتشر -ر
قم بإلقاء نظرة على ".patches/my- Second-patch.patch".
لاحظ أيضًا أنه تمت إضافة "my-sec-patch.patch" إلى ملف السلسلة. كلما
ابدأ التصحيح يدويًا ، وسيتم وضعه تلقائيًا في ملف السلسلة.
بهذه الطريقة ، كل شيء قابل للتكديس. إذا كان لديك أربع بقع مطبقة ، على سبيل المثال
"patch-1" و "patch-2" و "patch-3" و "patch-4" وإذا كان patch-2 و patch-4 كلاهما يلمسان
kernel/sched.c فسيكون لديك:
kernel / Sched.c ~ patch-2 النسخة الأصلية قبل التصحيح -2
kernel/sched.c~patch-4 انسخ قبل التصحيح 4. يحتوي على تغييرات من التصحيح 2
kernel / Sched.c نسخة العمل الحالية. يحتوي على تغييرات من التصحيح 4.
هذا يعني أن رؤوس الفرق الخاصة بك تحتوي على "~ اسم التصحيح" ، وهو أمر مناسب
كابل بيانات.
لإنهاء جولتنا، نقوم بإزالة كلا التصحيحين:
بتشر-ب
بتشر-ب
هذا إلى حد كبير ، حقًا.
استخدم برنامج patcher عبر الإنترنت باستخدام خدمات onworks.net