Android

Πώς να αλλάξετε ένα μήνυμα git commit

Mallika Sarabhai: Dance to change the world

Mallika Sarabhai: Dance to change the world

Πίνακας περιεχομένων:

Anonim

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

Αυτός ο οδηγός εξηγεί τον τρόπο αλλαγής του μηνύματος των πιο πρόσφατων ή παλαιότερων δεσμεύσεων του Git.

Αλλαγή της πιο πρόσφατης δέσμευσης

Η εντολή git commit --amend σάς επιτρέπει να αλλάξετε το πιο πρόσφατο μήνυμα δέσμευσης.

Δεν πιέστηκε να δεσμευτεί

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

  1. Μεταβείτε στον κατάλογο αποθετηρίων στο τερματικό σας.

    Εκτελέστε την ακόλουθη εντολή για να τροποποιήσετε (αλλάξετε) το μήνυμα της τελευταίας δέσμευσης:

    git commit --amend -m "New commit message."

    Αυτό που κάνει η εντολή είναι να αντικαταστήσει την πιο πρόσφατη δέσμευση με τη νέα.

    Η επιλογή -m σας επιτρέπει να γράψετε το νέο μήνυμα στη γραμμή εντολών χωρίς να ανοίξετε μια περίοδο επεξεργασίας.

Πριν αλλάξετε το μήνυμα δέσμευσης μπορείτε επίσης να προσθέσετε άλλες αλλαγές που ξεχάσατε προηγουμένως:

git add. git commit --amend -m "New commit message."

Τραβήξτε τη δέσμευση

Η τροποποιημένη (τροποποιημένη) δέσμευση είναι μια νέα οντότητα με διαφορετικό SHA-1. Η προηγούμενη δέσμευση δεν θα υπάρχει πλέον στον τρέχοντα κατάλογο.

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

  1. Πλοηγηθείτε στο αποθετήριο.

    Τροποποιήστε το μήνυμα της πιο πρόσφατης ώθησής σας:

    git commit --amend -m "New commit message."

    Πάγωμα δύναμης για ενημέρωση του ιστορικού του απομακρυσμένου αποθετηρίου:

    git push --force branch-name

Αλλαγή παλαιότερων ή πολλαπλών εντολών

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

  1. Μεταβείτε στο αποθετήριο που περιέχει το μήνυμα δέσμευσης που θέλετε να αλλάξετε.

    Πληκτρολογήστε git rebase -i HEAD~N , όπου N είναι ο αριθμός των δεσμεύσεων για την πραγματοποίηση μιας επανάληψης. Για παράδειγμα, αν θέλετε να αλλάξετε την 4η και την 5η τελευταία δέσμευση θα πληκτρολογήσετε:

    git rebase -i HEAD~5

    Η εντολή θα εμφανίσει τις τελευταίες δεσμεύσεις X στον προεπιλεγμένο επεξεργαστή κειμένου σας:

    pick 43f8707f9 fix: update dependency json5 to ^2.1.1 pick cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Μετακινηθείτε στις γραμμές του μηνύματος commit που θέλετε να αλλάξετε και αντικαταστήστε το pick με reword :

    reword 43f8707f9 fix: update dependency json5 to ^2.1.1 reword cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Αποθηκεύστε τις αλλαγές και κλείστε τον επεξεργαστή.

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

    fix: update dependency json5 to ^2.1.1

    Δύναμη ώθηση των αλλαγών στο απομακρυσμένο αποθετήριο:

    git push --force branch-name

συμπέρασμα

Για να αλλάξετε το πιο πρόσφατο μήνυμα δέσμευσης, χρησιμοποιήστε την εντολή git commit --amend και για να αλλάξετε παλαιότερα ή πολλαπλά μηνύματα commit χρησιμοποιήστε git rebase -i HEAD~N

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