You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/el/1-getting-started-lessons/2-github-basics
Lee Stott 2daab5271b
Update Quiz Link
3 weeks ago
..
README.md Update Quiz Link 3 weeks ago

README.md

Εισαγωγή στο GitHub

Αυτό το μάθημα καλύπτει τα βασικά του GitHub, μιας πλατφόρμας για φιλοξενία και διαχείριση αλλαγών στον κώδικά σας.

Εισαγωγή στο GitHub

Σκίτσο από Tomomi Imura

Ερωτηματολόγιο πριν το μάθημα

Ερωτηματολόγιο πριν το μάθημα

Εισαγωγή

Σε αυτό το μάθημα θα καλύψουμε:

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

Προαπαιτούμενα

Πριν ξεκινήσετε, θα πρέπει να ελέγξετε αν το Git είναι εγκατεστημένο. Στο τερματικό πληκτρολογήστε: git --version

Αν το Git δεν είναι εγκατεστημένο, κατεβάστε το Git. Στη συνέχεια, ρυθμίστε το τοπικό προφίλ Git στο τερματικό:

  • git config --global user.name "το-όνομά-σας"
  • git config --global user.email "το-email-σας"

Για να ελέγξετε αν το Git είναι ήδη ρυθμισμένο, μπορείτε να πληκτρολογήσετε: git config --list

Θα χρειαστείτε επίσης έναν λογαριασμό GitHub, έναν επεξεργαστή κώδικα (όπως το Visual Studio Code) και να ανοίξετε το τερματικό σας (ή: command prompt).

Μεταβείτε στο github.com και δημιουργήστε έναν λογαριασμό αν δεν έχετε ήδη, ή συνδεθείτε και συμπληρώστε το προφίλ σας.

Το GitHub δεν είναι το μοναδικό αποθετήριο κώδικα στον κόσμο· υπάρχουν και άλλα, αλλά το GitHub είναι το πιο γνωστό.

Προετοιμασία

Θα χρειαστείτε έναν φάκελο με ένα έργο κώδικα στον τοπικό σας υπολογιστή (laptop ή PC) και ένα δημόσιο αποθετήριο στο GitHub, το οποίο θα χρησιμεύσει ως παράδειγμα για το πώς να συνεισφέρετε στα έργα άλλων.


Διαχείριση κώδικα

Ας πούμε ότι έχετε έναν φάκελο τοπικά με κάποιο έργο κώδικα και θέλετε να αρχίσετε να παρακολουθείτε την πρόοδό σας χρησιμοποιώντας το git - το σύστημα ελέγχου εκδόσεων. Μερικοί άνθρωποι συγκρίνουν τη χρήση του git με το να γράφετε ένα ερωτικό γράμμα στον μελλοντικό σας εαυτό. Διαβάζοντας τα μηνύματα των commit σας μέρες, εβδομάδες ή μήνες αργότερα, θα μπορείτε να θυμηθείτε γιατί πήρατε μια απόφαση ή να "αναιρέσετε" μια αλλαγή - δηλαδή, όταν γράφετε καλά μηνύματα commit.

Εργασία: Δημιουργία αποθετηρίου και commit κώδικα

Δείτε το βίντεο

Βίντεο βασικών του Git και GitHub

  1. Δημιουργία αποθετηρίου στο GitHub. Στο GitHub.com, στην καρτέλα αποθετηρίων ή από τη γραμμή πλοήγησης πάνω δεξιά, βρείτε το κουμπί νέο αποθετήριο.

    1. Δώστε στο αποθετήριο (φάκελο) σας ένα όνομα.
    2. Επιλέξτε δημιουργία αποθετηρίου.
  2. Μεταβείτε στον φάκελο εργασίας σας. Στο τερματικό σας, μεταβείτε στον φάκελο (γνωστό και ως directory) που θέλετε να αρχίσετε να παρακολουθείτε. Πληκτρολογήστε:

    cd [name of your folder]
    
  3. Αρχικοποίηση αποθετηρίου git. Στο έργο σας πληκτρολογήστε:

    git init
    
  4. Έλεγχος κατάστασης. Για να ελέγξετε την κατάσταση του αποθετηρίου σας, πληκτρολογήστε:

    git status
    

    Η έξοδος μπορεί να μοιάζει κάπως έτσι:

    Changes not staged for commit:
    (use "git add <file>..." to update what will be committed)
    (use "git checkout -- <file>..." to discard changes in working directory)
    
         modified:   file.txt
         modified:   file2.txt
    

    Συνήθως η εντολή git status σας λέει πράγματα όπως ποια αρχεία είναι έτοιμα να αποθηκευτούν στο αποθετήριο ή έχουν αλλαγές που ίσως θέλετε να διατηρήσετε.

  5. Προσθήκη όλων των αρχείων για παρακολούθηση Αυτό ονομάζεται επίσης στάδιο αρχειοθέτησης/προσθήκη αρχείων στην περιοχή στάδιο.

    git add .
    

    Το git add μαζί με το επιχείρημα . υποδεικνύει ότι όλα τα αρχεία και οι αλλαγές σας είναι για παρακολούθηση.

  6. Προσθήκη επιλεγμένων αρχείων για παρακολούθηση

    git add [file or folder name]
    

    Αυτό μας βοηθά να προσθέσουμε μόνο επιλεγμένα αρχεία στην περιοχή στάδιο όταν δεν θέλουμε να κάνουμε commit όλα τα αρχεία ταυτόχρονα.

  7. Αφαίρεση όλων των αρχείων από το στάδιο

    git reset
    

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

  8. Αφαίρεση ενός συγκεκριμένου αρχείου από το στάδιο

    git reset [file or folder name]
    

    Αυτή η εντολή μας βοηθά να αφαιρέσουμε μόνο ένα συγκεκριμένο αρχείο από το στάδιο που δεν θέλουμε να συμπεριλάβουμε στο επόμενο commit.

  9. Διατήρηση της δουλειάς σας. Σε αυτό το σημείο έχετε προσθέσει τα αρχεία σε μια λεγόμενη περιοχή στάδιο. Ένας χώρος όπου το Git παρακολουθεί τα αρχεία σας. Για να κάνετε την αλλαγή μόνιμη, πρέπει να κάνετε commit τα αρχεία. Για να το κάνετε αυτό, δημιουργείτε ένα commit με την εντολή git commit. Ένα commit αντιπροσωπεύει ένα σημείο αποθήκευσης στην ιστορία του αποθετηρίου σας. Πληκτρολογήστε το εξής για να δημιουργήσετε ένα commit:

    git commit -m "first commit"
    

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

  10. Σύνδεση του τοπικού αποθετηρίου Git με το GitHub. Ένα αποθετήριο Git είναι καλό στον υπολογιστή σας, αλλά κάποια στιγμή θα θέλετε να έχετε αντίγραφο ασφαλείας των αρχείων σας κάπου και επίσης να προσκαλέσετε άλλους να συνεργαστούν μαζί σας στο αποθετήριο σας. Ένα εξαιρετικό μέρος για να το κάνετε αυτό είναι το GitHub. Θυμηθείτε ότι έχουμε ήδη δημιουργήσει ένα αποθετήριο στο GitHub, οπότε το μόνο που χρειάζεται να κάνουμε είναι να συνδέσουμε το τοπικό αποθετήριο Git με το GitHub. Η εντολή git remote add θα το κάνει αυτό. Πληκτρολογήστε την παρακάτω εντολή:

    Σημείωση, πριν πληκτρολογήσετε την εντολή, μεταβείτε στη σελίδα του αποθετηρίου σας στο GitHub για να βρείτε το URL του αποθετηρίου. Θα το χρησιμοποιήσετε στην παρακάτω εντολή. Αντικαταστήστε https://github.com/username/repository_name.git με το URL του GitHub σας.

    git remote add origin https://github.com/username/repository_name.git
    

    Αυτό δημιουργεί μια απομακρυσμένη σύνδεση, ή σύνδεση, με το όνομα "origin" που δείχνει στο αποθετήριο GitHub που δημιουργήσατε νωρίτερα.

  11. Αποστολή τοπικών αρχείων στο GitHub. Μέχρι στιγμής έχετε δημιουργήσει μια σύνδεση μεταξύ του τοπικού αποθετηρίου και του αποθετηρίου GitHub. Ας στείλουμε αυτά τα αρχεία στο GitHub με την παρακάτω εντολή git push, όπως:

    Σημείωση, το όνομα του branch σας μπορεί να είναι διαφορετικό από το main.

    git push -u origin main
    

    Αυτό στέλνει τα commits σας στο branch "main" στο GitHub.

  12. Προσθήκη περισσότερων αλλαγών. Αν θέλετε να συνεχίσετε να κάνετε αλλαγές και να τις στέλνετε στο GitHub, θα χρειαστεί να χρησιμοποιήσετε τις παρακάτω τρεις εντολές:

    git add .
    git commit -m "type your commit message here"
    git push
    

    Συμβουλή, ίσως θέλετε επίσης να υιοθετήσετε ένα αρχείο .gitignore για να αποτρέψετε αρχεία που δεν θέλετε να παρακολουθούνται από το να εμφανίζονται στο GitHub - όπως το αρχείο σημειώσεων που αποθηκεύετε στον ίδιο φάκελο αλλά δεν έχει θέση σε ένα δημόσιο αποθετήριο. Μπορείτε να βρείτε πρότυπα για αρχεία .gitignore στο .gitignore templates.

Μηνύματα commit

Ένα εξαιρετικό θέμα γραμμής μηνύματος commit στο Git ολοκληρώνει την παρακάτω πρόταση: Αν εφαρμοστεί, αυτό το commit θα <το θέμα της γραμμής σας εδώ>

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

Αφιερώστε λίγα λεπτά για να περιηγηθείτε στο GitHub. Μπορείτε να βρείτε ένα πραγματικά εξαιρετικό μήνυμα commit; Μπορείτε να βρείτε ένα πραγματικά ελάχιστο; Ποιες πληροφορίες πιστεύετε ότι είναι οι πιο σημαντικές και χρήσιμες για να μεταδοθούν σε ένα μήνυμα commit;

Εργασία: Συνεργασία

Ο κύριος λόγος για να βάλετε πράγματα στο GitHub ήταν να κάνετε δυνατή τη συνεργασία με άλλους προγραμματιστές.

Συνεργασία σε έργα με άλλους

Δείτε το βίντεο

Βίντεο βασικών του Git και GitHub

Στο αποθετήριο σας, μεταβείτε στο Insights > Community για να δείτε πώς συγκρίνεται το έργο σας με τα προτεινόμενα πρότυπα κοινότητας.

Εδώ είναι μερικά πράγματα που μπορούν να βελτιώσουν το αποθετήριο σας στο GitHub:

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

Τα αρχεία README, παρόλο που απαιτούν χρόνο για να προετοιμαστούν, συχνά παραμελούνται από πολυάσχολους συντηρητές. Μπορείτε να βρείτε ένα παράδειγμα ενός ιδιαίτερα περιγραφικού; Σημείωση: υπάρχουν μερικά εργαλεία για τη δημιουργία καλών README που ίσως θέλετε να δοκιμάσετε.

Εργασία: Συγχώνευση κώδικα

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

  1. Δημιουργία αντιγράφου του αποθετηρίου σας. Πιθανότατα θα θέλετε οι άνθρωποι να δημιουργήσουν αντίγραφο του έργου σας. Η δημιουργία αντιγράφου σημαίνει τη δημιουργία ενός αντιγράφου του αποθετηρίου σας στο προφίλ τους στο GitHub.
  2. Κλωνοποίηση. Από εκεί θα κλωνοποιήσουν το έργο στον τοπικό τους υπολογιστή.
  3. Δημιουργία branch. Θα θέλετε να τους ζητήσετε να δημιουργήσουν ένα branch για τη δουλειά τους.
  4. Εστίαση της αλλαγής σε μία περιοχή. Ζητήστε από τους συνεισφέροντες να επικεντρώσουν τις συνεισφορές τους σε ένα πράγμα τη φορά - έτσι οι πιθανότητες να συγχωνεύσετε τη δουλειά τους είναι μεγαλύτερες. Φανταστείτε ότι γράφουν μια διόρθωση σφάλματος, προσθέτουν μια νέα λειτουργία και ενημερώνουν αρκετές δοκιμές - τι γίνεται αν θέλετε ή μπορείτε να εφαρμόσετε μόνο 2 από τις 3 ή 1 από τις 3 αλλαγές;

Φανταστείτε μια κατάσταση όπου τα branches είναι ιδιαίτερα κρίσιμα για τη συγγραφή και αποστολή καλού κώδικα. Ποιες περιπτώσεις χρήσης μπορείτε να σκεφτείτε;

Σημείωση, γίνετε η αλλαγή που θέλετε να δείτε στον κόσμο και δημιουργήστε branches για τη δική σας δουλειά επίσης. Οποιαδήποτε commits κάνετε θα γίνουν στο branch που έχετε "επιλέξει". Χρησιμοποιήστε git status για να δείτε ποιο branch είναι αυτό.

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

  1. Δημιουργία branch. Χρησιμοποιήστε την εντολή git branch για να δημιουργήσετε ένα branch που θα περιέχει τις αλλαγές που σκοπεύουν να συνεισφέρουν:

    git branch [branch-name]
    
  2. Μετάβαση στο branch εργασίας. Μεταβείτε στο συγκεκριμένο branch και ενημερώστε τον φάκελο εργασίας με git switch:

    git switch [branch-name]
    
  3. Εργασία. Σε αυτό το σημείο θέλετε να προσθέσετε τις αλλαγές σας. Μην ξεχάσετε να ενημερώσετε το Git γι' αυτό με τις παρακάτω εντολές:

    git add .
    git commit -m "my changes"
    

    Βεβαιωθείτε ότι δίνετε στο commit σας ένα καλό όνομα, για το δικό σας καλό καθώς και για τον συντηρητή του αποθετηρίου που βοηθάτε.

  4. Συνδυασμός της δουλειάς σας με το branch main. Κάποια στιγμή τελειώνετε τη δουλειά σας και θέλετε να τη συνδυάσετε με αυτή του branch main. Το branch main μπορεί να έχει αλλάξει εν τω μεταξύ, οπότε βεβαιωθείτε ότι πρώτα το ενημερώνετε με τις παρακάτω εντολές:

    git switch main
    git pull
    

    Σε αυτό το σημείο θέλετε να βεβαιωθείτε ότι τυχόν συγκρούσεις, κατα Βεβαιωθείτε ότι πηγαίνετε στη σελίδα GitHub για το forked repo και αφαιρέστε τον απομακρυσμένο κλάδο που μόλις σπρώξατε σε αυτό.

Ο όρος Pull request φαίνεται λίγο αστείος, γιατί στην πραγματικότητα θέλετε να σπρώξετε τις αλλαγές σας στο έργο. Αλλά ο υπεύθυνος (ιδιοκτήτης του έργου) ή η βασική ομάδα πρέπει να εξετάσουν τις αλλαγές σας πριν τις συγχωνεύσουν με τον "κύριο" κλάδο του έργου, οπότε στην πραγματικότητα ζητάτε μια απόφαση αλλαγής από έναν υπεύθυνο.

Ένα pull request είναι το μέρος όπου συγκρίνετε και συζητάτε τις διαφορές που εισάγονται σε έναν κλάδο με κριτικές, σχόλια, ενσωματωμένα τεστ και άλλα. Ένα καλό pull request ακολουθεί περίπου τους ίδιους κανόνες με ένα μήνυμα commit. Μπορείτε να προσθέσετε μια αναφορά σε ένα ζήτημα στον παρακολουθητή ζητημάτων, όταν η εργασία σας, για παράδειγμα, διορθώνει ένα ζήτημα. Αυτό γίνεται χρησιμοποιώντας ένα # ακολουθούμενο από τον αριθμό του ζητήματος σας. Για παράδειγμα #97.

🤞Ελπίζουμε ότι όλα τα τεστ θα περάσουν και οι ιδιοκτήτες του έργου θα συγχωνεύσουν τις αλλαγές σας στο έργο🤞

Ενημερώστε τον τρέχοντα τοπικό κλάδο εργασίας σας με όλα τα νέα commits από τον αντίστοιχο απομακρυσμένο κλάδο στο GitHub:

git pull

Πώς να συνεισφέρετε σε ανοιχτό λογισμικό

Πρώτα, ας βρούμε ένα αποθετήριο (ή repo) στο GitHub που σας ενδιαφέρει και στο οποίο θέλετε να συνεισφέρετε μια αλλαγή. Θα θέλετε να αντιγράψετε το περιεχόμενό του στον υπολογιστή σας.

Ένας καλός τρόπος για να βρείτε αποθετήρια φιλικά προς αρχάριους είναι να αναζητήσετε με την ετικέτα 'good-first-issue'.

Αντιγραφή ενός repo τοπικά

Υπάρχουν διάφοροι τρόποι αντιγραφής κώδικα. Ένας τρόπος είναι να "κλωνοποιήσετε" το περιεχόμενο του αποθετηρίου, χρησιμοποιώντας HTTPS, SSH ή το GitHub CLI (Command Line Interface).

Ανοίξτε το τερματικό σας και κλωνοποιήστε το αποθετήριο όπως παρακάτω: git clone https://github.com/ProjectURL

Για να εργαστείτε στο έργο, μεταβείτε στον σωστό φάκελο: cd ProjectURL

Μπορείτε επίσης να ανοίξετε ολόκληρο το έργο χρησιμοποιώντας Codespaces, τον ενσωματωμένο επεξεργαστή κώδικα / περιβάλλον ανάπτυξης cloud του GitHub, ή το GitHub Desktop.

Τέλος, μπορείτε να κατεβάσετε τον κώδικα σε έναν συμπιεσμένο φάκελο.

Μερικά ακόμη ενδιαφέροντα πράγματα για το GitHub

Μπορείτε να κάνετε star, watch και/ή "fork" οποιοδήποτε δημόσιο αποθετήριο στο GitHub. Μπορείτε να βρείτε τα αποθετήρια που έχετε κάνει star στο αναπτυσσόμενο μενού πάνω δεξιά. Είναι σαν να κάνετε bookmarking, αλλά για κώδικα.

Τα έργα έχουν έναν παρακολουθητή ζητημάτων, κυρίως στο GitHub στην καρτέλα "Issues", εκτός αν αναφέρεται διαφορετικά, όπου οι άνθρωποι συζητούν ζητήματα που σχετίζονται με το έργο. Και η καρτέλα Pull Requests είναι όπου οι άνθρωποι συζητούν και αξιολογούν αλλαγές που βρίσκονται σε εξέλιξη.

Τα έργα μπορεί επίσης να έχουν συζητήσεις σε φόρουμ, λίστες αλληλογραφίας ή κανάλια συνομιλίας όπως Slack, Discord ή IRC.

Ρίξτε μια ματιά στο νέο σας αποθετήριο GitHub και δοκιμάστε μερικά πράγματα, όπως να επεξεργαστείτε ρυθμίσεις, να προσθέσετε πληροφορίες στο repo σας και να δημιουργήσετε ένα έργο (όπως έναν πίνακα Kanban). Υπάρχουν πολλά που μπορείτε να κάνετε!


🚀 Πρόκληση

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

Κουίζ μετά το μάθημα

Κουίζ μετά το μάθημα

Ανασκόπηση & Αυτομελέτη

Διαβάστε περισσότερα για τη συνεισφορά σε λογισμικό ανοιχτού κώδικα.

Git cheatsheet.

Εξασκηθείτε, εξασκηθείτε, εξασκηθείτε. Το GitHub διαθέτει εξαιρετικά μονοπάτια μάθησης μέσω skills.github.com:

Θα βρείτε επίσης πιο προχωρημένα μαθήματα.

Εργασία

Ολοκληρώστε το μάθημα Πρώτη Εβδομάδα στο GitHub


Αποποίηση ευθύνης:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης AI Co-op Translator. Παρόλο που καταβάλλουμε προσπάθειες για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτοματοποιημένες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα θα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.