25Aug

Πώς να δημιουργήσετε αυτόματα Δημιουργία αντιγράφων ασφαλείας στο Visual Studio

click fraud protection

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

Αξιοποιώντας τη δύναμη των γεγονότων μετά τη δημιουργία και μια απλή δέσμη δέσμης ενεργειών, μπορείτε εύκολα να προσθέσετε τη δυνατότητα να δημιουργήσετε αυτόματα από το Visual Studio ένα αντίγραφο ασφαλείας πηγαίου κώδικα για κάθε δημιουργία κώδικα έκδοσης.

Πώς λειτουργεί

Η λύση μας είναι απλή: κάθε φορά που συμβαίνει ένα επιτυχημένο συμβάν δημιουργίας, έχουμε μια δέσμη ενεργειών δέσμης ενεργειών, η οποία δημιουργεί ένα συμπιεσμένο αρχείο( προαιρετικά με ετικέτες και timestamped) όλων των αρχείων στον αντίστοιχο φάκελο του Visual Studio project.

Αυτό είναι.Το μόνο που έχετε να κάνετε είναι να ακολουθήσετε τα παρακάτω βήματα.

Δημιουργία αντιγράφων ασφαλείας αυτόματης δημιουργίας

Πρώτα θα χρειαστεί να κατεβάσετε και να εξαγάγετε το αρχείο δέσμης δέσμης ενεργειών από τη σύνδεση στο κάτω μέρος του άρθρου.Επιπλέον, θα χρειαστείτε το εργαλείο γραμμής εντολών 7-Zip( αυτό περιλαμβάνεται στην έκδοση 'full' του σεναρίου Project Build Backup ή μπορείτε να το κατεβάσετε ξεχωριστά).Στο παράδειγμά μας, εξάγαμε αυτά τα αρχεία στον κατάλογο "C: \ Tools", αλλά οποιαδήποτε θέση θα λειτουργήσει.

instagram viewer

Ανοίξτε τις ιδιότητές σας στο Visual Studio Project, κάνοντας διπλό κλικ στο My Project κάτω από το αντίστοιχο έργο.

Στις ιδιότητες του έργου, μεταβείτε στην ενότητα Compile.

Στην κάτω δεξιά γωνία, κάντε κλικ στο κουμπί Δημιουργία συμβάντων.

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

Η παρακάτω εντολή δημιουργεί ένα αντίγραφο ασφαλείας δημιουργίας μόνο για τη μεταγλώττιση της διαμόρφωσης απελευθέρωσης( αυτό είναι ό, τι ελέγχει η συνθήκη IF), καθώς, ρεαλιστικά, πιθανώς δεν θέλουμε να δημιουργήσουμε ένα αντίγραφο ασφαλείας για κάθε κατασκευή Debug / test.Επιπλέον, θα επισυνάπτεται η τρέχουσα χρονική σήμανση( / διακόπτης D) με το αρχείο αντιγράφου να βρίσκεται σε μορφή αρχείου 7z( / 7z) σε αντίθεση με το zip.Με την προσθήκη του / T "$( ConfigurationName)" ως παράμετρος, προσθέτουμε τον τύπο δημιουργίας( Release in this case) στο όνομα του αρχείου αντιγράφων ασφαλείας.

IF "$( ConfigurationName)" == "Απελευθερώστε" C: \ Tools \ ProjectBuildBackup.bat "$( SolutionDir)" / D "$( ProjectName)/ 7z

Χρησιμοποιώντας το κουμπί "Μακροεντολές", μπορείτε να έχετε προπληρωμένες πληροφορίες σχεδίου για το Visual Studio, έτσι ώστε να μην απαιτείται hardcoding.Μπορείτε να ρυθμίσετε αυτήν την εντολή όπως απαιτείται( ειδικά τη θέση του αρχείου δέσμης), αλλά οι τρεις πρώτες παράμετροι πιθανόν να μην χρειάζεται να αλλάξουν.

Είναι σημαντικό να έχετε κατά νου ότι οι μετα-εκδηλώσεις λειτουργούν ανεξάρτητα από τη διαμόρφωση του έργου που έχετε επιλέξει.Αυτός είναι ο λόγος για τον οποίο πρέπει να προσθέσουμε την εντολή IF "$( ConfigurationName)" == "Release" - διαφορετικά η ενέργεια δημιουργίας αντιγράφων ασφαλείας θα εμφανιστεί στο σε κάθε επιτυχημένο συμβάν build .

Μόλις τελειώσετε την εντολή σας και την εφαρμόσετε, η συμβολοσειρά εντολών θα εμφανιστεί στην ενότητα Post-build events.

Σημειώστε ότι ενώ η εντολή "CALL" δεν είναι τεχνικά απαραίτητη, συνιστάται ιδιαίτερα, σαν να παραλείπεται, τότε οποιαδήποτε συμβάντα που προστίθενται μετά από αυτό ενδέχεται να μην εκτελούνται.

Τώρα, κάθε φορά που εκτελείτε ένα compile / build με το έργο σας στη διαμόρφωση απελευθέρωσης, θα δείτε την έξοδο από τη λειτουργία δημιουργίας αντιγράφων ασφαλείας.

[...]

Κάθε επιτυχής έκδοση Release δημιουργεί ένα νέο αρχείο με το timestamped αρχείο με το φάκελο solution σε έναν υποκατάλογο, "Builds"( το οποίο μπορεί να οριστεί με το διακόπτη / O, αν χρειαστεί).

Τα περιεχόμενα κάθε αντιγράφου ασφαλείας είναι το πλήρες έργο του Visual Studio - αρχεία προέλευσης, ρυθμίσεις διαμόρφωσης, μεταγλωττισμένα δυαδικά αρχεία και όλα αυτά - γεγονός που καθιστά αυτό ένα πραγματικό χρονικό διάστημα δημιουργίας αντιγράφων ασφαλείας.

Δεν αντικαθιστά ένα σύστημα ελέγχου πλήρους έκδοσης

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

Σε περίπτωση που θα χρειαστεί ποτέ να επιστρέψετε και να εξετάσετε μια προηγούμενη έκδοση, διαθέτοντας ένα αρχείο έργου έτοιμο προς χρήση( μόνο εξάγοντας σε ένα νέο κατάλογο) για μια χρονική στιγμή συλλογής μπορεί να έρθει πραγματικά χρήσιμος.

Σύνδεσμοι

Λήψη έργου Δημιουργία αντιγράφου Script

Λήψη εργαλείου γραμμής εντολών 7-Zip( Σημείωση - το βοηθητικό πρόγραμμα 7za είναι επίσης συνδεδεμένο με λήψη από το script δημιουργίας αντιγράφων έργου)