OnWorks Linux ו-Windows Online WorkStations

לוגו

אירוח מקוון בחינם עבור תחנות עבודה

<הקודם | תוכן | הבא>

תיקון

השמיים תיקון התוכנית משמשת להחלת שינויים על קבצי טקסט. הוא מקבל פלט מ הבדל והוא משמש בדרך כלל להמרת גרסה ישנה יותר של קבצים לגרסאות חדשות יותר. הבה נבחן דוגמה מפורסמת. ליבת לינוקס פותחה על ידי צוות גדול ומאורגן בצורה רופפת של


תורמים ששולחים זרם קבוע של שינויים קטנים בקוד המקור. ליבת לינוקס מורכבת מכמה מיליוני שורות קוד, בעוד שהשינויים שנעשו על ידי תורם אחד בו-זמנית הם די קטנים. אין זה הגיוני שתורם ישלח לכל מפתח עץ מקור שלם של ליבה בכל פעם שנעשה שינוי קטן. במקום זאת, מוגש קובץ הבדל. קובץ ה-diff מכיל את השינוי מהגרסה הקודמת של הקרנל לגרסה החדשה עם השינויים של התורם. לאחר מכן המקלט משתמש ב- תיקון תוכנית להחיל את השינוי על עץ המקור שלו. באמצעות הבדל/תיקון מציע שני יתרונות משמעותיים:

1. קובץ ה-diff קטן מאוד, בהשוואה לגודל המלא של עץ המקור.

2. קובץ ה-diff מראה בתמציתיות את השינוי שמתבצע, ומאפשר לבודקים של התיקון להעריך אותו במהירות.

כמובן, הבדל/תיקון יעבוד על כל קובץ טקסט, לא רק על קוד מקור. זה יהיה ישים באותה מידה לקובצי תצורה או כל טקסט אחר.

להכנת קובץ diff לשימוש איתו תיקון, התיעוד של GNU (ראה קריאה נוספת למטה) מציע להשתמש הבדל באופן הבא:

הבדל -נאור old_file new_file > diff_file

איפה old_file ו קובץ חדש הם קבצים בודדים או ספריות המכילות קבצים. ה r

אפשרות תומכת ברקורסיה של עץ ספריות.

לאחר יצירת קובץ ה-diff, נוכל להחיל אותו כדי לתקן את הקובץ הישן לקובץ החדש:

תיקון diff_file

נדגים בעזרת קובץ הבדיקה שלנו:



[me@linuxbox ~]$ diff -Naur file1.txt file2.txt > patchfile.txt

[me@linuxbox ~]$ patch < patchfile.txt

תיקון קובץ file1.txt [me@linuxbox ~]$ cat file1.txt b

cde

[me@linuxbox ~]$ diff -Naur file1.txt file2.txt > patchfile.txt

[me@linuxbox ~]$ patch < patchfile.txt

תיקון קובץ file1.txt [me@linuxbox ~]$ cat file1.txt b

cde


בדוגמה זו, יצרנו קובץ diff בשם patchfile.txt ולאחר מכן השתמש ב תיקון תוכנית להחלת התיקון. שימו לב שלא היינו צריכים לציין קובץ יעד תיקון, שכן קובץ ה-diff (בפורמט מאוחד) כבר מכיל את שמות הקבצים בכותרת. לאחר החלת התיקון, נוכל לראות זאת file1.txt עכשיו תואמים file2.txt.

לתיקון יש מספר רב של אפשרויות, וישנן תוכניות שירות נוספות שניתן להשתמש בהן כדי לנתח ולערוך תיקונים.


מחשוב ענן מערכת ההפעלה המוביל ב-OnWorks: