Αφού έμαθες τα βασικά του προγραμματισμού, ήρθε η ώρα για το επόμενο βήμα. Θα γνωρίσεις δύο από τα σημαντικότερα εργαλεία των προγραμματιστών: το Git και το GitHub.
Είτε δημιουργείς προσωπικά projects είτε συνεργάζεσαι με άλλους developers, αυτά τα εργαλεία είναι απαραίτητα. Θα σε βοηθήσουν να οργανώνεις καλύτερα τον κώδικά σου. Επίσης, θα παρακολουθείς κάθε αλλαγή και θα προστατεύεις τη δουλειά σου από λάθη.
Σε αυτόν τον οδηγό θα μάθεις τι είναι το Git και το GitHub. Θα δούμε πώς λειτουργούν τα repositories και τα branches. Τέλος, θα αναλύσουμε την καθημερινή διαχείριση ενός project.
Τι είναι το Git;
Το Git είναι ένα σύστημα ελέγχου εκδόσεων (Version Control System – VCS). Με απλά λόγια, καταγράφει όλες τις αλλαγές στα αρχεία ενός project. Έτσι, σου επιτρέπει να επιστρέψεις σε οποιαδήποτε προηγούμενη έκδοση, αν κάτι πάει λάθος.
Ίσως συνηθίζεις να αποθηκεύεις πολλαπλά αντίγραφα, όπως Project_v2 ή Project_Final. Το Git όμως κρατά ολόκληρο το ιστορικό των αλλαγών με οργανωμένο τρόπο.
Χάρη στο Git μπορείς να δοκιμάζεις νέες λειτουργίες χωρίς φόβο. Μπορείς να επαναφέρεις παλαιότερες εκδόσεις και να συνεργάζεσαι εύκολα με άλλους. Ένα ακόμη σημαντικό πλεονέκτημα είναι ότι λειτουργεί τοπικά στον υπολογιστή σου. Έτσι, δεν απαιτεί σύνδεση στο διαδίκτυο για τις περισσότερες εργασίες.
Τι είναι το GitHub;
Το GitHub είναι μια online πλατφόρμα που βασίζεται στο Git. Ουσιαστικά, φιλοξενεί τα repositories σου στο cloud.
Το Git λειτουργεί τοπικά στον υπολογιστή σου. Αντίθετα, το GitHub αποθηκεύει τα projects σου στο διαδίκτυο. Έτσι, έχεις πρόσβαση από παντού, κρατάς backups και συνεργάζεσαι εύκολα. Παράλληλα, αποτελεί μία από τις μεγαλύτερες κοινότητες προγραμματιστών στον κόσμο. Χιλιάδες εταιρείες και developers δημοσιεύουν εκεί τα έργα τους. Επίσης, πολλά open-source projects αναπτύσσονται αποκλειστικά μέσω GitHub.
Για τους επαγγελματίες, ένα ενεργό GitHub προφίλ λειτουργεί ως portfolio. Παρουσιάζει την εμπειρία, τις γνώσεις και τα προσωπικά τους projects.
Γιατί είναι σημαντικά το Git και το GitHub;
Πολλοί αρχάριοι αποθηκεύουν τα projects τους μόνο στον υπολογιστή τους. Τι γίνεται όμως αν ο υπολογιστής παρουσιάσει κάποιο πρόβλημα; Αν γίνει μια λανθασμένη αλλαγή, η ανάκτηση αρχείων ίσως είναι αδύνατη.
Με το Git διατηρείς ολόκληρο το ιστορικό των αλλαγών σου. Παράλληλα, με το GitHub έχεις πάντα ένα επιπλέον αντίγραφο στο cloud. Η συνεργασία με άλλους προγραμματιστές γίνεται πολύ πιο οργανωμένη. Όλοι εργάζονται στο ίδιο project, χωρίς να επικαλύπτει ο ένας τις αλλαγές του άλλου.
Πώς μπορούμε να χρησιμοποιήσουμε το Git;
Υπάρχουν διάφοροι τρόποι για να χρησιμοποιήσεις το Git. Όλοι βασίζονται ακριβώς στο ίδιο σύστημα. Η διαφορά βρίσκεται μόνο στον τρόπο αλληλεπίδρασης.
Ο πιο παραδοσιακός τρόπος είναι μέσω του Terminal, χρησιμοποιώντας εντολές. Ίσως στην αρχή να φαίνεται δύσκολο. Στην πραγματικότητα όμως, οι βασικές εντολές είναι λίγες. Επιπλέον, χρησιμοποιούνται καθημερινά από τους επαγγελματίες.
Αν προτιμάς ένα γραφικό περιβάλλον, χρησιμοποίησε το GitHub Desktop. Σου επιτρέπει να κάνεις τις ίδιες εργασίες, χωρίς να πληκτρολογείς εντολές. Επιπλέον, τα περισσότερα σύγχρονα IDEs διαθέτουν ενσωματωμένη υποστήριξη Git. Τέτοια είναι το Visual Studio Code, το Visual Studio και το IntelliJ IDEA.
Έτσι μπορείς να κάνεις commit, push, pull και merge εύκολα. Διαχειρίζεσαι τα branches απευθείας, χωρίς να ανοίγεις ξεχωριστή εφαρμογή. Με τον καιρό είναι καλό να εξοικειωθείς και με το Terminal. Οι περισσότερες οδηγίες και τα επαγγελματικά projects απαιτούν εντολές Git.
GitHub Desktop και άλλες εφαρμογές
Το GitHub Desktop είναι εξαιρετικά δημοφιλές για τους αρχάριους. Προσφέρει ένα απλό και εύχρηστο γραφικό περιβάλλον. Από εκεί δημιουργείς repositories και πραγματοποιείς commits. Επίσης, ανεβάζεις αλλαγές στο GitHub και διαχειρίζεσαι branches.
Υπάρχουν επίσης εφαρμογές όπως το GitKraken και το Sourcetree. Ωστόσο, δεν είναι απαραίτητο να εγκαταστήσεις πολλά διαφορετικά προγράμματα. Εφαρμογές όπως το GitHub Desktop καλύπτουν πλήρως τις ανάγκες ενός αρχάριου. Το ίδιο ισχύει και για το ενσωματωμένο Git του VS Code.
Βασικές έννοιες του Git
Πριν δούμε τις εντολές, αξίζει να γνωρίσουμε μερικές βασικές έννοιες.
-
Repository (Repo): Είναι ο φάκελος του project που παρακολουθείται από το Git.
-
Commit: Ένα στιγμιότυπο της κατάστασης του project σε μια συγκεκριμένη χρονική στιγμή.
-
Push: Η αποστολή των τοπικών αλλαγών σου στο GitHub.
-
Pull: Η λήψη των τελευταίων αλλαγών από το GitHub στον υπολογιστή σου.
-
Clone: Η δημιουργία ενός τοπικού αντιγράφου ενός υπάρχοντος repository.
Οι βασικές εντολές Git
Στην καθημερινή χρήση θα χρειαστείς μόνο λίγες εντολές.
-
git init– Δημιουργεί ένα νέο Git repository. -
git status– Εμφανίζει την κατάσταση του project και τις αλλαγές. -
git add .– Προσθέτει όλα τα τροποποιημένα αρχεία στο επόμενο commit. -
git commit -m "Πρώτο commit"– Αποθηκεύει ένα νέο στιγμιότυπο του project. -
git pull– Κατεβάζει τις τελευταίες αλλαγές από το cloud. -
git push– Ανεβάζει τις τοπικές αλλαγές σου στο GitHub.
Τι είναι το Clone;
Όταν θέλεις να κατεβάσεις ένα repository στον υπολογιστή σου, χρησιμοποιείς το Clone. Η λειτουργία αυτή χρησιμεύει όταν συνεργάζεσαι σε ένα project. Το ίδιο ισχύει όταν αλλάζεις υπολογιστή ή μελετάς κάποιο open-source έργο.
Η βασική εντολή είναι: git clone https://github.com/username/project.git
Μετά την εκτέλεσή της δημιουργείται ένας νέος φάκελος. Περιέχει όλα τα αρχεία καθώς και ολόκληρο το ιστορικό του repository.
Τι είναι τα Branches;
Τα branches είναι ένα από τα σημαντικότερα χαρακτηριστικά του Git. Σου επιτρέπουν να δημιουργείς μια ανεξάρτητη έκδοση του project. Έτσι, δοκιμάζεις νέες λειτουργίες χωρίς να επηρεάζεις τον βασικό κώδικα.
Στα περισσότερα projects υπάρχει ένα κύριο branch με όνομα main. Αυτό περιέχει τη σταθερή έκδοση της εφαρμογής. Κάθε νέα λειτουργία αναπτύσσεται συνήθως σε ξεχωριστό branch. Παραδείγματα αποτελούν τα login-feature ή dark-mode. Με αυτόν τον τρόπο εργάζεσαι με απόλυτη ασφάλεια. Δοκιμάζεις αλλαγές και τις ενσωματώνεις μόνο όταν είναι έτοιμες.
Συγχώνευση Branches (Merge)
Όταν ολοκληρώσεις μια νέα λειτουργία, οι αλλαγές ενσωματώνονται στο κύριο branch. Αυτό γίνεται μέσω της διαδικασίας Merge.
Η διαδικασία γίνεται συνήθως ως εξής:
-
git checkout main -
git merge dark-mode
Έτσι όλες οι αλλαγές του branch μεταφέρονται στο main. Παράλληλα, διατηρείται ακέραιο ολόκληρο το ιστορικό του project.
GitHub ως Portfolio
Το GitHub δεν χρησιμοποιείται μόνο για αποθήκευση κώδικα. Για πολλούς εργοδότες αποτελεί ένα ζωντανό portfolio. Μέσα από τα repositories βλέπουν τα projects που έχεις ολοκληρώσει. Βλέπουν τις τεχνολογίες που χρησιμοποιείς και τη συχνότητα που προγραμματίζεις. Επίσης, κατανοούν τον τρόπο που οργανώνεις τον κώδικά σου.
Γι’ αυτό είναι καλή πρακτική να ανεβάζεις συστηματικά τα προσωπικά σου projects. Έτσι θα διατηρείς το προφίλ σου πάντα ενημερωμένο.
Πώς να μάθεις Git πιο γρήγορα
Το Git δεν μαθαίνεται μόνο διαβάζοντας θεωρία. Η πραγματική εξοικείωση έρχεται μέσα από τη συνεχή χρήση.
Κάθε φορά που ξεκινάς ένα νέο project, δημιούργησε ένα repository. Πραγματοποίησε συχνά commits με περιγραφικά μηνύματα. Χρησιμοποίησε branches για νέες λειτουργίες και ανέβαζε τακτικά τις αλλαγές στο GitHub. Μετά από λίγα projects, η χρήση του Git θα γίνει φυσική συνήθεια.
Χρήσιμες πηγές εκμάθησης
Αν θέλεις να εμβαθύνεις περισσότερο, οι παρακάτω πηγές αποτελούν τις καλύτερες επιλογές:
Συχνά λάθη των αρχάριων
Οι περισσότεροι νέοι προγραμματιστές ξεχνούν να κάνουν συχνά commits. Συχνά εργάζονται μόνο στο main branch ή χρησιμοποιούν γενικά μηνύματα, όπως Update. Επίσης, αρκετοί φοβούνται να χρησιμοποιήσουν το Terminal. Παρόλα αυτά, μετά από λίγες ημέρες εξάσκησης γίνεται ιδιαίτερα εύκολο.
Το σημαντικότερο είναι να χρησιμοποιείς το Git σε κάθε project. Όσο περισσότερο το εφαρμόζεις στην πράξη, τόσο πιο εύκολο θα σου φαίνεται.
Συμπέρασμα
Αν ξεκινάς τώρα με τον προγραμματισμό, μάθε άμεσα το Git και το GitHub. Είναι από τα πρώτα εργαλεία που αξίζει να γνωρίζεις. Θα σε βοηθήσουν να οργανώνεις σωστά τα projects σου και να δουλεύεις με ασφάλεια.
Δεν χρειάζεται να τα μάθεις όλα μαζί. Αρκεί να ξεκινήσεις με τα βασικά και να εξασκηθείς σε μικρά projects. Σταδιακά, μπορείς να χρησιμοποιείς το Terminal ή το Visual Studio Code.
Αν βρίσκεσαι ακόμη στα πρώτα σου βήματα, δες το άρθρο μου «Προγραμματισμός για Αρχάριους: Πώς να Ξεκινήσεις από το Μηδέν». Εκεί θα βρεις πολύτιμες συμβουλές. Θα σε βοηθήσουν να μπεις σωστά στον κόσμο του προγραμματισμού.
Είμαι η Κατερίνα Σφακιανού. Ξεκίνησα από την περιέργεια και κατέληξα να δημιουργώ μέσα από τον κώδικα, εκεί όπου οι ιδέες αποκτούν μορφή και ουσία. Με οδηγό τα ταξίδια, το τρέξιμο και τα βιβλία αυτοβελτίωσης, αναζητώ εμπειρίες που με εξελίσσουν.
Leave A Comment