Το Google Doc of Coding: Git & GitHub

Εισαγωγή

Το Google Doc είναι ένας επεξεργαστής κειμένου από τον διακομιστή (online). Τα αρχεία ενός χρήστη δημιουργούνται μέσω ενός προγράμματος περιήγησης ιστού και αποθηκεύονται σε έναν διακομιστή. Αυτό το λογισμικό επιτρέπει στους χρήστες να μοιράζονται έγγραφα με άλλους για συνεργασία. Κανονικά, η ροή εργασίας είναι η ακόλουθη:

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

Εκτός από την κοινή χρήση αρχείων, ένα άλλο σημαντικό χαρακτηριστικό είναι η δυνατότητα να αναιρέσετε ή να επαναλάβετε τις αλλαγές που έγιναν στο κύριο αρχείο. Οι αλλαγές που έγιναν στο έγγραφο είναι διαδοχικές και οποιοσδήποτε χρήστης μπορεί να αναιρέσει (ή να επαναλάβει) αυτές τις αλλαγές.

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

Atom, Git & GitHub

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

Το Atom ( ή οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου ) μοιάζει με τον επεξεργαστή κειμένου από την πλευρά του πελάτη (επιτραπέζιος υπολογιστής), εκτός του ότι το έγγραφο είναι γραμμένο σε κάποια γλώσσα (δηλ. JavaScript).

Το Git είναι ένα εργαλείο για την επιλεκτική καταγραφή του ιστορικού των αποθηκευμένων αλλαγών του έργου σας. Είναι ένας τρόπος « ελέγχου » όλων των διαφορετικών εκδόσεων του προγράμματος προγραμματισμού σας.

Το GitHub μοιάζει με τα Έγγραφά σας Google, εκτός εάν μπορείτε να δημιουργήσετε και να αποθηκεύσετε την έκδοση του κώδικα εκτός σύνδεσης, προτού το " πιέσετε " για να αποθηκευτεί στο διαδίκτυο.

Έτσι, έχετε το πρόγραμμα επεξεργασίας κειμένου ( Atom ) , το σύστημα ελέγχου έκδοσης ( Git ) και το απομακρυσμένο σύστημα αποθήκευσης αρχείων ( GitHub ) . Αυτά είναι τα βασικά στοιχεία που επιλύουν το πρόβλημα της συνεργασίας, ειδικά για προγραμματιστές λογισμικού. Η ροή εργασίας είναι παρόμοια με τη χρήση των Εγγράφων Google, με κάποιες διαφορές.

Συνεργατική ροή εργασίας ανάπτυξης λογισμικού

  1. Δημιουργία διαδικτυακού ( απομακρυσμένου ) αποθετηρίου GitHub ( //github.com/new )

2. Δημιουργήστε ένα αποθετήριο εκτός σύνδεσης ( τοπικό ). Η εντολή τερματικού git init project_name ξεκινά το έργο σας δημιουργώντας ένα φάκελο για την αποθήκευση των αρχείων ελέγχου περιεχομένου και έκδοσης για την αποθήκευση ιστορικού των αλλαγών του

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

3. Χρησιμοποιήστε ένα πρόγραμμα επεξεργασίας κειμένου για να δημιουργήσετε περιεχόμενο. Εκεί αρχίζετε να γράφετε το πρόγραμμά σας με το Atom και να δημιουργείτε τα αρχεία JavaScript.

4. Αποθηκεύστε το περιεχόμενο και σημειώστε σημαντικές ιστορικές προόδους στο έργο σας. Το τερματικό εντολή git add. προσθέτει όλα τα περιεχόμενα του φακέλου, όλες τις αλλαγές, που πρέπει να δεσμευτούν στο ιστορικό. Η εντολή git commit -m 'message' δεσμεύει τις αλλαγές στο ιστορικό, μαζί με ένα μήνυμα που εξηγεί τις αλλαγές που έγιναν. Η εντολή git push ωθεί τα αρχεία και τα ιστορικά δεδομένα σας στο απομακρυσμένο αποθετήριο σας.

  • Καθώς προχωράτε συνεχώς στο έργο σας, καταγράφετε τη λογική πίσω από κάθε στάδιο ανάπτυξης (git add, git commit, git push).

5. Μοιραστείτε το αρχείο με άλλους για συνεργασία. Μόλις το απομακρυσμένο αποθετήριο σας έχει περιεχόμενο, μπορείτε να μοιραστείτε το έργο σας με συνεργάτες.

  • Αφού τα μέλη αποδεχτούν την πρόσκληση, μπορούν να διακλάδουν ένα κλαδί από το απομακρυσμένο αποθετήριο και να κλωνοποιήσουν το έργο τοπικά ( git clone sh>).
  • Κάθε συνεργάτης μπορεί να δημιουργήσει περιεχόμενο, να αποθηκεύσει το περιεχόμενο και να το ωθήσει στον απομακρυσμένο κλάδο του.
  • Καθώς οι συνεργάτες συνεχίζουν να δημιουργούν και να αποθηκεύουν το περιεχόμενό τους, καταλήγουν να χτίζουν πιρούνια στον «ουρανό» του GitHub ( git add , git commit , git push ).
  • Κάθε πιρούνι είναι ένας συνεργάτης που απομακρύνεται από το αρχικό έργο, έτσι ώστε τα μέλη να μπορούν να εργάζονται παράλληλα με τον δημιουργό, χωρίς να διαταράσσουν την πρόοδο του άλλου. Κάθε φορά που ένας συνεργάτης εκτελεί ένα git push , το πιρούνι επιμηκύνεται

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

  • Όταν ένας συνεργάτης υποβάλλει ένα αίτημα έλξης, ο δημιουργός μπορεί να πραγματοποιήσει ένα git pull για να συγχωνεύσει τα κλαδιά σε μια ενημερωμένη έκδοση του έργου. Αυτή η νέα έκδοση μπορεί στη συνέχεια να προωθηθεί στο απομακρυσμένο repo για να βλέπουν και να χρησιμοποιούν όλοι.

Έλεγχος έκδοσης και κοινή χρήση αρχείων

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

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

Αυτό θα ήταν ένα δύσκολο επίτευγμα χωρίς τον έλεγχο εκδόσεων του Git και την κοινή χρήση αρχείων του GitHub . Μια απλή εντολή τερματικού ( git branch & lt; branch_n a me>) μπορεί να πάρει έναν κλώνο σε ένα τοπικό μηχάνημα και να δημιουργήσει έναν κλάδο έτσι ώστε να μπορεί να αναπτυχθεί μια διαφορετική έκδοση του έργου. Στη συνέχεια, ένας χρήστης μπορεί να σημειώσει ότι λαμβάνει την πρόοδό του (git add & git commit) ανά πάσα στιγμή. Εάν υπήρχαν προβλήματα με μια ενεργή έκδοση, ο χρήστης μπορεί απλά να μεταβεί σε μια προηγούμενη αγκύρωση (git chec kout

anch_name>) και συνεχίστε από εκεί.

Αυτή είναι η έννοια του ελέγχου έκδοσης . Ανά πάσα στιγμή, ένας χρήστης μπορεί να μεταβεί σε εναλλακτικές εκδόσεις ενός έργου, ενώ κάνει κατανοητές σημειώσεις που εξηγούν την εξέλιξη κάθε έκδοσης. Ο χρήστης έχει πλήρη έλεγχο των εκδόσεων που έχουν αναπτυχθεί. Μια απλή ώθηση τερματικού στα «σύννεφα» του GitHub καθιστά οποιαδήποτε έκδοση διαθέσιμη στους συνεργάτες τους. Αυτή είναι η δύναμη της χρήσης του Git & GitHub στη συνεργατική ανάπτυξη λογισμικού.

Βιβλιογραφικές αναφορές:

Git - Βίντεο

Επεξεργασία περιγραφής git-scm.com Μάθετε το Git με το Bitbucket Cloud | Εκπαιδευτικό Atlitian Git

Μάθετε το Git με το Bitbucket Cloudwww.atlassian.com Πώς λειτουργούν τα Έγγραφα Google

Πίσω μέρος των Εγγράφων Google - Το πίσω μέρος των Εγγράφων Google βασίζεται σε απλό, φθηνό υλικό και λογισμικό. Μάθετε περισσότερα… computer.howstuffworks.com Atom (πρόγραμμα επεξεργασίας κειμένου) - Wikipedia

Το Atom είναι ένα δωρεάν πρόγραμμα επεξεργασίας κειμένου και πηγαίου κώδικα για macOS, Linux και Microsoft Windows με υποστήριξη για… en.wikipedia.org Git - Wikipedia

Το Git () είναι ένα σύστημα ελέγχου κατανεμημένης έκδοσης για την παρακολούθηση αλλαγών στον πηγαίο κώδικα κατά την ανάπτυξη λογισμικού. Είναι… en.wikipedia.org GitHub - Wikipedia

Το GitHub προσφέρει σχέδια για εταιρικούς, ομαδικούς, επαγγελματικούς και δωρεάν λογαριασμούς που χρησιμοποιούνται συνήθως για τη φιλοξενία λογισμικού ανοιχτού κώδικα… en.wikipedia.org