Κυκλοφόρησε η νέα έκδοση του Git 2.22 και αυτές είναι οι αλλαγές της

πηγαίνω

Παρουσιάστηκε η κυκλοφορία της νέας έκδοσης του Git 2.22. Το Git είναι ένα από τα πιο δημοφιλή, αξιόπιστα και υψηλής απόδοσης συστήματα ελέγχου εκδόσεων και παρέχει επίσης εργαλεία ανάπτυξης.

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

Σε σύγκριση με την προηγούμενη έκδοση , έγιναν 745 αλλαγές στη νέα έκδοση, η οποία προετοιμάστηκε με τη συμμετοχή 74 προγραμματιστών, εκ των οποίων οι 18 συμμετείχαν στην ανάπτυξη για πρώτη φορά.

Οι καλύτερες στιγμές του Git 2.22

Για να εμφανίσετε τον τοπικό κλάδο που χρησιμοποιείται αυτήν τη στιγμή, μπορείτε τώρα να χρησιμοποιήσετε την εντολή "git branch-show-current ".

Επιπλέον, από την έκδοση 1.18, είναι διαθέσιμη η νέα λειτουργία μεταφοράς για το σύνολο υποβολών " git rebase --rebase-merges " , η οποία έχει αντικαταστήσει την προηγούμενη επιλογή " --preserve-merges ", η οποία πλέον έχει επισημανθεί ως παρωχημένη.

Για να διατηρήσετε τη δομή του κλάδου σε έναν φορητό κλάδο, θα μπορούσατε να χρησιμοποιήσετε την επιλογή " --preserve-merges ", η οποία, όταν ξεκίνησε σε διαδραστική λειτουργία ( git rebase -i --preserve-merges ), επέτρεπε την επεξεργασία του ιστορικού υποβολής, αλλά δεν εγγυόταν την πλήρη διατήρηση της δομής του αποθετηρίου.

Η διάδοχη λειτουργία " --rebase-merges " σάς επιτρέπει να διατηρήσετε τη δομή των αλλαγών στον φορητό κλάδο, παρέχοντας παράλληλα ένα πλήρες σύνολο διαδραστικών λειτουργιών, όπως διαγραφή, αναδιάταξη και μετονομασία υποβολών.

Για παράδειγμα, η συνάρτηση " --rebase-merges " επιτρέπει την υποβολή από έναν αποσπασμένο κλάδο σε έναν νεότερο κύριο κλάδο, διατηρώντας παράλληλα τη δομή του κλάδου στον φορητό κλάδο και κάνοντας κάποιες αλλαγές στις σημειώσεις για να τις υποβάλετε εν κινήσει.

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

Υψηλή υποστήριξη backend

Η αναφορά ` git bisect` έχει ενημερωθεί και είναι πλέον πιο ευανάγνωστη , ενώ το ` git mergetool` υποστηρίζει πλέον και το Sublime Merge (` smerge` ) ως backend. Το Git καλεί το νέο άγκιστρο ` post-index-change` όταν αλλάζει το αποθηκευμένο αρχείο ευρετηρίου, κάτι που βοηθάει με τα εικονικοποιημένα λειτουργικά δέντρα.

Επιπλέον, η εντολή " git difftoo l" εκτελείται πλέον και εκτός ενός αποθετηρίου και ακυρώνει την εντολή " git checkout -m <other> " όταν ανιχνεύει διαφορά μεταξύ του HEAD και του index.

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

Ταυτόχρονα, το ` git clone` επικοινωνεί μέσω της έκδοσης 2 του πρωτοκόλλου χάρη στη νέα επιλογή διακομιστή ` switch` . Αρκετά χαρακτηριστικά βελτιώνουν την ολοκλήρωση του κώδικα και οι προγραμματιστές έχουν επίσης εργαστεί στο εργαλείο παρακολούθησης trace2.

Ο νέος μηχανισμός παρακολούθησης Trace2 προσφέρει μια πιο ευέλικτη και δομημένη μορφή εξόδου. Το Trace2 επιτρέπει τη συλλογή δεδομένων τηλεμετρίας λειτουργίας και απόδοσης για πιο λεπτομερή ανάλυση και εντοπισμό σφαλμάτων (ο χρήστης εκχωρεί τον ελεγκτή· δεν αποστέλλονται δεδομένα εξωτερικά).

Απόδοση και ανάπτυξη

Ο ενσωματωμένος μηχανισμός διαφορικής του Git έχει ξαναγραφτεί και τώρα υποστηρίζει το ` git commit-tree` , και το ` pack-redundant` API και το ` git multi-pack-index verify` λειτουργούν πλέον πιο γρήγορα σε αποθετήρια που περιέχουν πολλά αρχεία πακέτων. Για τους προγραμματιστές, το πλαίσιο δοκιμών έχει επίσης ενημερωθεί.

Πρόσφατα, η ` git stash` υλοποιήθηκε σε C για την ` git rebase` . Η υλοποίηση σε C ενημερώθηκε για να αποτρέψει το Git από το να αντικαθιστά επανειλημμένα το ίδιο αρχείο. Η ` git diff` εκτελείται πλέον πιο γρήγορα σε ειδικά σενάρια όπου συλλέγει πληροφορίες σχετικά με blobs. Τέλος, αλλά εξίσου σημαντικό, η `git clone` επιταχύνει τη διαδικασία σύνδεσης.

Προστέθηκε επίσης η δυνατότητα φιλτραρίσματος όταν εμφανίζονται εκτεταμένες ετικέτες "git log" που είναι προσαρτημένες σε δεσμεύσεις.


Προσθήκη ως προτιμώμενης πηγής στην Google