-
1. Ξεκινώντας με το Git
-
2. Τα θεμελιώδη στοιχεία του Git
-
3. Διακλαδώσεις στο Git
-
4. Το Git στον διακομιστή
- 4.1 Τα πρωτόκολλα
- 4.2 Εγκατάσταση του Git σε διακομιστή
- 4.3 Δημιουργία δημόσιου κλειδιού SSH
- 4.4 Στήσιμο του διακομιστή
- 4.5 Δαίμονες του Git
- 4.6 Έξυπνο HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Επιλογές φιλοξενίας από τρίτους
- 4.10 Ανακεφαλαίωση
-
5. Κατανεμημένο Git
-
6. GitHub
-
7. Εργαλεία του Git
- 7.1 Επιλογή αναθεώρησης
- 7.2 Διαδραστική εργασία με το στάδιο καταχώρισης
- 7.3 stash και clean
- 7.4 Υπογραφή της δουλειάς μας
- 7.5 Αναζήτηση
- 7.6 Η ιστορία ξαναγράφεται
- 7.7 Απομυθοποίηση της reset
- 7.8 Συγχωνεύσεις για προχωρημένους
- 7.9 Rerere
- 7.10 Αποσφαλμάτωση με το Git
- 7.11 Λειτουργικές υπομονάδες
- 7.12 Δεμάτιασμα δεδομένων
- 7.13 Replace
- 7.14 Αποθήκευση διαπιστευτηρίων
- 7.15 Ανακεφαλαίωση
-
8. Εξατομίκευση του Git
-
9. Το Git και άλλα συστήματα
- 9.1 Το Git ως πελάτης
- 9.2 Μετανάστευση στο Git
- 9.3 Ανακεφαλαίωση
-
10. Εσωτερική λειτουργία του Git
- 10.1 Διοχετεύσεις και πορσελάνες
- 10.2 Αντικείμενα του Git
- 10.3 Αναφορές του Git
- 10.4 Πακετάρισμα αρχείων
- 10.5 Τα refspec
- 10.6 Πρωτόκολλα μεταφοράς
- 10.7 Διατήρηση και ανάκτηση δεδομένων
- 10.8 Μεταβλητές περιβάλλοντος
- 10.9 Ανακεφαλαίωση
-
A1. Appendix A: Το Git σε άλλα περιβάλλοντα
- A1.1 Γραφικές διεπαφές
- A1.2 Το Git στο Visual Studio
- A1.3 Git στο Eclipse
- A1.4 Το Git στο Bash
- A1.5 Το Git στο Zsh
- A1.6 Το Git στο Powershell
- A1.7 Ανακεφαλαίωση
-
A2. Appendix B: Ενσωμάτωση του Git στις εφαρμογές μας
- A2.1 Γραμμή εντολών Git
- A2.2 Libgit2
- A2.3 JGit
-
A3. Appendix C: Εντολές Git
- A3.1 Ρύθμιση και διαμόρφωση
- A3.2 Λήψη και δημιουργία έργων
- A3.3 Βασική λήψη στιγμιοτύπων
- A3.4 Διακλάδωση και συγχώνευση
- A3.5 Κοινή χρήση και ενημέρωση έργων
- A3.6 Επιθεώρηση και σύγκριση
- A3.7 Αποσφαλμάτωση
- A3.8 Επιθέματα
- A3.9 Ηλεκτρονικό ταχυδρομείο
- A3.10 Εξωτερικά Συστήματα
- A3.11 Διοίκηση
- A3.12 Εντολές διοχέτευσης
A1.4 Appendix A: Το Git σε άλλα περιβάλλοντα - Το Git στο Bash
Το Git στο Bash
Αν είμαστε χρήστες του 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:

bash
.Και τα δύο αυτά σενάρια έρχονται με χρήσιμη τεκμηρίωση· περισσότερες πληροφορίες μπορεί να βρει κανείς στα περιεχόμενα των git-completion.bash
και git-prompt.sh
.