Αν είμαστε χρήστες του Bash, μπορούμε να αξιοποιήσουμε κάποιες από τις λειτουργίες του κελύφους μας για να κάνουμε την εμπειρία μας με το Git πολύ πιο φιλική. Το Git στην πραγματικότητα φέρει plugins για πολλά κελύφη, αλλά δεν είναι ενεργοποιημένο εκ προεπιλογής.
Πρώτον, πρέπει να λάβουμε ένα αντίγραφο του αρχείου contrib/completion/git-completion.bash
εκτός του πηγαίου κώδικα Git.
Το αντιγράφουμε κάπου βολικά, όπως στον αρχικό μας κατάλογο και προσθέτουμε το παρακάτω στο .bashrc
μας:
. ~/git-completion.bash
Μόλις γίνει αυτό, αλλάζουμε τον κατάλογο σε ένα αποθετήριο Git και πληκτρολογούμε:
$ git chec<tab>
-
και το Bash θα ολοκληρώσε αυτόματα σε
git checkout
. Αυτό λειτουργεί με όλες τις δευτερεύουσες εντολές του Git, τις παραμέτρους της γραμμής εντολών και τα απομακρυσμένα αποθετήρια και τα ονόματα ref, όπου χρειάζεται.
Είναι επίσης χρήσιμο να προσαρμόσουμε την προτροπή μας ώστε να εμφανίζονται πληροφορίες σχετικά με το αποθετήριο Git του τρέχοντος καταλόγου.
Αυτό μπορεί να είναι τόσο απλό όσο και πολύπλοκο όσο θέλουμε, αλλά υπάρχουν γενικά μερικά βασικά κομμάτια πληροφοριών που ο περισσότερος κόσμος θέλει, όπως ο τρέχων κλάδος, και η κατάσταση του καταλόγου εργασίας.
Για να τα προσθέσουμε στην προτροπή μας, απλά αντιγράφουμε το αρχείο contrib/completion/git-prompt.sh
από τον αποθετήριο πηγαίου κώδικα του Git στον οικείο κατάλογό μας, προσθέτουμε κάτι τέτοιο στο` .bashrc` μας:
. ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\w$(__git_ps1 " (%s)")\$ '
Το \w
σημαίνει την εκτύπωση του τρέχοντος καταλόγου εργασίας, το \$
εκτυπώνει το τμήμα $
της προτροπής και το __git_ps1 " (%s)"
καλεί τη λειτουργία που παρέχεται από το git-prompt.sh
με ένα όρισμα μορφοποίησης.
Τώρα η προτροπή του bash θα μοιάζει με αυτό όταν είμαστε οπουδήποτε μέσα σε ένα έργο που ελέγχεται από το Git:
Και τα δύο αυτά σενάρια έρχονται με χρήσιμη τεκμηρίωση· περισσότερες πληροφορίες μπορεί να βρει κανείς στα περιεχόμενα των git-completion.bash
και git-prompt.sh
.