Saltar al contenido

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

17 de mayo de 2021

Μια ενημέρωση κώδικα είναι ένα τμήμα κώδικα υπολογιστή που εισάγει ή τροποποιεί ένα υπάρχον σύνολο κωδικών. Τα μπαλώματα χρησιμοποιούνται συνήθως κατά τη διαδικασία προγραμματισμού για να αντικαταστήσουν τις αλλαγές στον πηγαίο κώδικα. Το Linux περιλαμβάνει μια ενημερωμένη έκδοση κώδικα βοηθητικό πρόγραμμα για τον εξορθολογισμό αυτής της διαδικασίας. Η διαδικασία επιδιόρθωσης χρησιμοποιείται συνήθως σε επίσημα συστήματα ελέγχου αλλαγών, όπου ισχύουν επαγγελματικές βέλτιστες πρακτικές για ποιότητα κώδικα και δοκιμές. Η ενημέρωση κώδικα χρησιμοποιείται λιγότερο συχνά σε έργα χόμπι, όπου ο πηγαίος κώδικας αλλάζει κατά την κρίση του προγραμματιστή.

Η διαδικασία επιδιόρθωσης

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

Εφαρμογή ενημερώσεων κώδικα: Ένα παράδειγμα

Εξετάστε ένα τυπικό πρόγραμμα «Hello World». Ο πηγαίος κώδικας στο C μοιάζει με αυτόν: #include
int main ()
{
printf («Γεια σου κόσμος!»);
}

Για να αλλάξετε το έντυπο μήνυμα σε Γεια σου σύμπαν!, αναπτύξτε μια εναλλακτική έκδοση του κώδικα, ως εξής: #include
int main ()
{
printf («Γεια σου σύμπαν!»);
}

Δημιουργήστε ένα αρχείο ενημέρωσης κώδικα χρησιμοποιώντας το διαφορά βοηθητικό πρόγραμμα: diff -u helloworld.c helloworld2.c> file.patch

Στη συνέχεια, θα δείτε ότι το αρχείο ενημέρωσης κώδικα μοιάζει με αυτό:

Το αρχείο ενημέρωσης κώδικα παραθέτει κάθε συγκριτικό αρχείο. Προσφέρει σύμβολα, και +++, προσδιορίζοντας κάθε όνομα αρχείου με την τελευταία του αναθεωρημένη ημερομηνία. Στη συνέχεια, συνοψίζει τη θέση των αλλαγών μεταξύ ενός ζεύγους @@ σύμβολα. Τέλος, παραθέτει τον πηγαίο κώδικα, επισημαίνοντας τις διαφορετικές γραμμές χρησιμοποιώντας τα σημειωμένα σύμβολα συν και πλην. Γενικά, το σύμβολο μείον δείχνει ότι η γραμμή αφαιρείται στο ενημερωμένο αρχείο και το σύμβολο συν αντιπροσωπεύει αντικατάσταση, εάν η γραμμή θα αντικατασταθεί. Για να εφαρμόσετε το αρχείο ενημέρωσης κώδικα στο αρχικό αρχείο, εκτελέστε: patch

Σε αυτό το σημείο, το πρώτο αρχείο αλλάζει για να ταιριάζει με το δεύτερο. Για να αναιρέσετε την ενημέρωση κώδικα, χρησιμοποιήστε το – Ρ επιλογή: patch -R

Σκέψεις

Αυτή η προσέγγιση για την επιδιόρθωση του πηγαίου κώδικα είναι λιγότερο συχνή από ό, τι στο παρελθόν. Τα σύγχρονα συστήματα ελέγχου πηγής, όπως το Git και το Subversion, διαχειρίζονται αυτόματα εκδόσεις με την πάροδο του χρόνου, συμπεριλαμβανομένων και διαφόρων κλάδων ανάπτυξης και δοκιμών, έτσι ώστε ο έλεγχος διαφορών και η επιδιόρθωση αρχείων να διαχειρίζεται πλέον το εργαλείο ελέγχου εκδόσεων. Εάν πρέπει να ακολουθήσετε μια τυπική δομή κωδικοποίησης ή να συμμορφωθείτε με τα πρότυπα ομαδικής κωδικοποίησης, χρησιμοποιείτε ένα εργαλείο όπως το Git. Ωστόσο, μια αποτελεσματική περίπτωση χρήσης για το διαφορά και κηλίδα Το σύστημα σε ένα τοπικό μηχάνημα σχετίζεται με αλλαγές σε έναν ολόκληρο κατάλογο αρχείων. Για παράδειγμα, εάν έχετε αναπτύξει έναν ιστότοπο, αλλά πρέπει να κάνετε μια αλλαγή μόνο σε μία γραμμή – όπως μια γραμμή πνευματικών δικαιωμάτων – τότε αυτό το σύστημα ενημερώνει όλες αυτές τις σελίδες ταυτόχρονα. Συμβουλευτείτε τις σελίδες για κηλίδα για πρόσθετο πλαίσιο.