Skip to main content

Πώς να εφαρμόσετε μια ενημερωμένη έκδοση κώδικα σε ένα αρχείο που χρησιμοποιεί το Linux

Staying safe from email & chat scams (Ενδέχεται 2024)

Staying safe from email & chat scams (Ενδέχεται 2024)
Anonim

Αυτός ο οδηγός παρέχει μια βασική επισκόπηση για την εφαρμογή μιας ενημερωμένης έκδοσης κώδικα σε ένα πρόγραμμα ή ένα αρχείο.

Η εντολή που χρησιμοποιείται για την εφαρμογή των επιδιορθώσεων είναι η εντολή patch, αλλά για να εφαρμοστεί ένα έμπλαστρο, η εντολή diff πρέπει επίσης να χρησιμοποιηθεί για την παροχή των διαφορών που πρέπει να διορθωθούν.

Γιατί θα δημιουργούσατε μια ενημερωμένη έκδοση κώδικα

Φανταστείτε ότι είχατε ένα αρχείο HTML ως εξής:

Η ιστοσελίδα μου

Καλώς ήρθατε στο MySite

Η παραπάνω πηγή, όταν φορτώνεται σε ένα πρόγραμμα περιήγησης ιστού, θα εμφανίσει τις λέξεις "Καλώς ήρθατε στο MySite".

Είναι συνηθισμένο όταν προγραμματίζετε να υπάρχουν πολλαπλές εκδόσεις του ίδιου αρχείου. Για παράδειγμα, θα υπήρχε μία έκδοση που είναι η τρέχουσα ζωντανή έκδοση, θα υπήρχε μια άλλη έκδοση στον κλάδο ανάπτυξης που μπορεί να περιέχει πολλές αλλαγές, τέλος, μπορεί να υπάρχει άλλη έκδοση σε ένα κλάδο έκδοσης.

Ο κλάδος έκδοσης θα είναι η έκδοση που χρησιμοποιείται από πραγματικούς χρήστες (δηλαδή στην περίπτωση αυτή οι επισκέπτες στην ιστοσελίδα MySite). Ας πούμε ότι το MySite είναι στην έκδοση 1.0. Μετά από μια φάση ανάπτυξης, θα δημιουργήσετε ένα κλάδο έκδοσης που θα ήταν στην περίπτωση αυτή 1.1. Ο τομέας ανάπτυξης θα είναι μπροστά από τον κλάδο έκδοσης επειδή μπορεί να περιέχει αλλαγές που δεν πρόκειται να κυκλοφορήσουν στην έκδοση 1,2 αλλά θα είναι για την έκδοση 1.1.

Φανταστείτε ότι υπάρχει ένα σφάλμα στο οποίο το MySite θα πρέπει να ονομάζεται YourSite. Θα μπορούσατε να μεταβείτε σε κάθε υποκατάστημα με τη σειρά του και να κάνετε αλλαγές στην ζωντανή έκδοση, την έκδοση ανάπτυξης και την απελευθέρωση της έκδοσής σας θα μπορούσατε να κάνετε την αλλαγή ως μια επείγουσα επιδιόρθωση σε ζωντανή και στη συνέχεια να εφαρμόσετε την ενημερωμένη έκδοση κώδικα στην ανάπτυξη και την κυκλοφορία κλαδιά.

Ένα παράδειγμα εργασίας

Δημιουργήστε ένα αρχείο που ονομάζεται myfile.html με τον ακόλουθο κώδικα:

Η ιστοσελίδα μου

Καλώς ήρθατε στο MySite

Αυτό είναι ένα επεξεργασμένο παράδειγμα κώδικα πηγαίου κώδικα.

Δημιουργήστε ένα άλλο αρχείο που ονομάζεται myfile_v2.html με τον ακόλουθο κώδικα:

YourSite

Καλώς ήρθατε στο YourSite

Αυτό είναι ένα επεξεργασμένο παράδειγμα κώδικα πηγαίου κώδικα.

Το πρώτο αρχείο είναι η αρχική ιστοσελίδα με την επικεφαλίδα "Καλώς ήλθατε στο MySite". Το δεύτερο αρχείο είναι το ίδιο με το πρώτο αρχείο εκτός από το MyFile που έχει μετονομαστεί στο YourFile στο κείμενο.

Πώς να δημιουργήσετε το αρχείο Diff

Προκειμένου να δημιουργηθεί μια ενημερωμένη έκδοση κώδικα, πρέπει να επιλύσουμε τις διαφορές μεταξύ του myfile.html και του myfile_v2.html.

Μπορούμε να το κάνουμε αυτό με την εντολή diff ως εξής:

diff -u myfile.html myfile_v2.html> myfile.patch

Μπορείτε να ανοίξετε το αρχείο myfile.patch στον επεξεργαστή nano ως εξής, για να το δείτε:

nano myfile.patch

Οι γραμμές που παραμένουν αμετάβλητες εμφανίζονται με μπλε χρώμα. Οι γραμμές που έχουν αφαιρεθεί εμφανίζονται με κόκκινο χρώμα και οι γραμμές που έχουν προστεθεί εμφανίζονται με πράσινο χρώμα.

Πώς να εφαρμόσετε την ενημερωμένη έκδοση κώδικα χρησιμοποιώντας την εντολή "" Ετικέτα ""

Για να εφαρμόσετε την ενημερωμένη έκδοση κώδικα στο myfile.html χρησιμοποιήστε την ακόλουθη εντολή:

patch <myfile.patch

Πώς να επαναφέρετε μια ενημερωμένη έκδοση κώδικα

Αυτό θα εφαρμόσει τις αλλαγές που δημιουργήθηκαν χρησιμοποιώντας την εντολή diff στο αρχικό αρχείο myfile.html.

Αν θέλετε να επαναφέρετε την ενημερωμένη έκδοση κώδικα έτσι ώστε το myfile.html να επανέλθει στον τρόπο με τον οποίο ήταν αρχικά, χρησιμοποιήστε την ακόλουθη εντολή:

patch-R <myfile.patch

Περίληψη

Η εντολή patch μπορεί να χρησιμοποιηθεί για την εφαρμογή επιδιορθώσεων σε ολόκληρη τη δομή καταλόγου.

Υπάρχουν πολύ καλύτερα εργαλεία από την εντολή patch για τη δημιουργία μπαλών και την εξασφάλιση καλού ελέγχου πηγής.

Υπάρχει ένας λόγος που τόσες αναπτυξιακές εργασίες χρησιμοποιούν το GIT για τον έλεγχο των πηγών. Το GIT διευκολύνει τη δημιουργία μιας σταθερής στρατηγικής διακλάδωσης.

Η εντολή patch είναι εντάξει για την εφαρμογή διαφορών σε ένα script bash ή κάτι απλό, αλλά θα μπορούσατε εύκολα να δημιουργήσετε ένα αντίγραφο ασφαλείας των αρχείων που θέλετε να διορθώσετε και απλά να αντιγράψετε τα νέα αρχεία στον ίδιο χώρο.

Για περισσότερες πληροφορίες, χρησιμοποιήστε την εντολή man:

άνθρωπος patch