Github com στα ρωσικά βήμα προς βήμα οδηγίες. git

Η αντίσταση στην αλλαγή είναι θεμελιώδες ανθρώπινο χαρακτηριστικό. Εάν δεν υπήρχε Git τη στιγμή που ξεκινήσατε με συστήματα ελέγχου έκδοσης, είναι πολύ πιθανό να ξεκινήσατε με το Subversion. Συχνά οι άνθρωποι λένε ότι το Git είναι πολύ περίπλοκο για αρχάριους. Ωστόσο, παρακαλώ να διαφωνήσω μαζί σας.

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

Αυτό το άρθρο θα καλύψει τα βασικά - πώς να αρχικοποιήσετε ένα έργο, πώς να διαχειριστείτε νέα και υπάρχοντα αρχεία και πώς να αποθηκεύσετε τον κώδικά σας στο cloud. Θα παραλείψουμε μερικά δύσκολα πράγματα όπως η διακλάδωση, καθώς αυτό το άρθρο απευθύνεται σε αρχάριους.

Εγκατάσταση του Git

Ο επίσημος ιστότοπος του Git είναι διαθέσιμος για διάφορα συστήματα - Linux, Mac, Windows. Στην περίπτωσή μας, θα χρησιμοποιήσουμε το Ubuntu 13.04 και θα εγκαταστήσουμε το Git μέσω του apt-get .

sudo apt-get install git

Αρχική διαμόρφωση

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

mkdir my_git_project cd my_git_project

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

Git config --global user.name "Shaumik" git config --global user.email " [email προστατευμένο]" git config --global color.ui "auto"

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

Ρυθμίσαμε επίσης το χρώμα της διεπαφής σε auto , έτσι ώστε η έξοδος των εντολών Git να είναι χρωματισμένη. Προσθέτουμε το --global πρόθεμα σε αυτές τις εντολές έτσι ώστε αυτές οι τιμές να χρησιμοποιούνται σε όλο το σύστημα και να μην χρειάζεται να οριστούν για κάθε μεμονωμένο έργο.

Προετοιμασία αρχείων για δέσμευση

Το επόμενο βήμα είναι να δημιουργήσετε ορισμένα αρχεία. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου για αυτό. Σημειώστε ότι εάν αρχικοποιείτε το Git σε ένα υπάρχον έργο, δεν χρειάζεται να κάνετε αυτό το βήμα.

Έλεγχος της κατάστασης του αποθετηρίου

Τώρα που έχετε αρχεία στο έργο σας, ας ρίξουμε μια ματιά στο πώς τα χειρίζεται το Git. Για να ελέγξετε την τρέχουσα κατάσταση ενός αποθετηρίου, χρησιμοποιήστε την εντολή git status

Προσθήκη αρχείων στο Git

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

Git add my_file

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

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

Git add myfile2 myfile3

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

Διαγραφή αρχείων

Ας φανταστούμε ότι προσθέσατε κατά λάθος ένα αρχείο στο αποθετήριο που δεν θα έπρεπε να υπάρχει. Ή θέλετε να αφαιρέσετε ένα αρχείο από το σύστημα ελέγχου έκδοσης. Γενικά, η εντολή git rm όχι μόνο θα αφαιρέσει ένα αρχείο από το αποθετήριο, αλλά και θα το αφαιρέσει φυσικά από το δίσκο. Για να σταματήσετε το Git να παρακολουθεί ένα αρχείο αλλά να το διατηρήσετε στο δίσκο, χρησιμοποιήστε την ακόλουθη εντολή:

Git rm -- προσωρινά αποθηκευμένο [όνομα αρχείου]

Δεσμεύστε αλλαγές

Αφού προσθέσετε όλα τα απαραίτητα αρχεία, μπορείτε να τα δεσμεύσετε (δεσμεύσετε) στο Git. Σκεφτείτε μια δέσμευση ως ένα στιγμιότυπο της κατάστασης του έργου σε ένα συγκεκριμένο στάδιο, στο οποίο μπορείτε να επιστρέψετε ανά πάσα στιγμή και να δείτε την κατάσταση του έργου εκείνη τη στιγμή. Κάθε δέσμευση έχει ένα μήνυμα που σχετίζεται με αυτό, το οποίο δίνεται ως όρισμα μετά το πρόθεμα -m

Git commit -m "Η πρώτη μου δέσμευση"

Καθορίστε ένα μήνυμα που θα περιέχει χρήσιμες πληροφορίες, καθώς βοηθούν στην κατανόηση του τι ακριβώς άλλαξε σε αυτήν την δέσμευση. Αποφύγετε τυχόν γενικά μηνύματα όπως "Κανόνες σφαλμάτων". Εάν διαθέτετε πρόγραμμα παρακολούθησης σφαλμάτων, μπορείτε να καθορίσετε ένα μήνυμα όπως "Διόρθωση σφάλματος #123". Είναι καλή πρακτική να συμπεριλάβετε το όνομα του κλάδου ή τη βελτίωση στο μήνυμα. Για παράδειγμα, το "Asset Management - Προστέθηκε η δυνατότητα δημιουργίας PDF με βάση ένα στοιχείο" είναι ένα σαφές και κατανοητό μήνυμα.

Το Git προσδιορίζει μια δέσμευση με μεγάλο δεκαεξαδικό αριθμό. Συνήθως, δεν είναι απαραίτητο να αντιγράψετε ολόκληρη τη γραμμή, οι πρώτοι 5-6 χαρακτήρες είναι αρκετοί για να προσδιορίσετε ένα συγκεκριμένο commit. Από το στιγμιότυπο οθόνης, μπορείτε να δείτε ότι η δέσμευσή μας προσδιορίζεται με τον αριθμό 8dd76fc .

Περαιτέρω δεσμεύσεις

Ας αλλάξουμε μερικά αρχεία αφού τα έχουμε δεσμεύσει. Αφού τα αλλάξουμε, το git status θα αναφέρει ότι έχουμε αλλάξει αρχεία.

Μπορείτε να δείτε τι έχει αλλάξει σε αυτά τα αρχεία από το προηγούμενο commit με την εντολή git diff. Εάν θέλετε να δείτε τις αλλαγές για ένα συγκεκριμένο αρχείο, μπορείτε να χρησιμοποιήσετε το git diff<файл> .

Είναι απαραίτητο να καταχωρίσετε τις αλλαγές και να τις δεσμεύσετε. Όλα τα αλλαγμένα αρχεία έργου μπορούν να προστεθούν σε μια δέσμευση με την ακόλουθη εντολή:

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

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

Διαχείριση έργου

Για να δείτε το ιστορικό ενός έργου, μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή:

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

Εκπομπή Git<хеш_коммита>

Οπου<хеш_коммита>είναι ο δεκαεξαδικός αριθμός που σχετίζεται με την δέσμευση. Δεδομένου ότι αυτός ο οδηγός είναι για αρχάριους, δεν θα καλύψουμε τον τρόπο επαναφοράς στην κατάσταση μιας συγκεκριμένης δέσμευσης ή τον τρόπο διαχείρισης υποκαταστημάτων.

Οι περισσότεροι από εσάς πιθανότατα έχετε ακούσει για το σύστημα ελέγχου έκδοσης git. Σήμερα θα εξετάσουμε ολόκληρη τη διαδρομή από την εγκατάσταση του git έως την πραγματοποίηση των αλλαγών μας σε ένα απομακρυσμένο αποθετήριο χρησιμοποιώντας τη βιβλιοθήκη OsEngine ως παράδειγμα. Αρχικά, πραγματοποιήστε λήψη του προγράμματος-πελάτη git από τον σύνδεσμο και εγκαταστήστε τον. Ερωτήματα δεν θα προκύψουν
πρέπει, απλώς κάντε κλικ στο Επόμενο παντού. Περαιτέρω αλληλεπίδραση με το git θα εξεταστεί χρησιμοποιώντας το παράδειγμα εργασίας με τον πελάτη κονσόλας. Το επόμενο βήμα είναι να εγγραφείτε στον ιστότοπο https://github.com/ . Τώρα μπορούμε να συμμετάσχουμε στην εργασία στο OsEngine. Για να το κάνετε αυτό, μεταβείτε στο αποθετήριο του έργου και κάντε κλικ στο κουμπί Fork στην επάνω δεξιά γωνία.

Με αυτή την ενέργεια, δημιουργήσαμε ένα fork (με άλλα λόγια, ένα κλαδί), το οποίο αποθηκεύεται στο αποθετήριο του λογαριασμόςκαι τώρα μπορείτε να κάνετε αλλαγές σε αυτό χωρίς φόβο να σπάσετε κάτι στον κύριο κλάδο του έργου. Επιπλέον, αυτό ακριβώς το αποθετήριο μας στο github θα το ονομάσουμε απομακρυσμένο αποθετήριο.
Τώρα ας ξεκινήσουμε με το ίδιο το git και το πρώτο πράγμα που πρέπει να κάνουμε είναι να δημιουργήσουμε ένα τοπικό αντίγραφο του απομακρυσμένου αποθετηρίου στον υπολογιστή μας. Για να το κάνετε αυτό, μεταβείτε στον επιθυμητό φάκελο, επιλέξτε το στοιχείο Git Bash Here στο μενού περιβάλλοντος και η κονσόλα θα ανοίξει.

$ git clone "insert unquoted link here"

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

Εργασία με τοπικό αποθετήριο

εγκατάσταση git

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

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

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

$ git config --global --list


Εργασία με κλαδιά

Οι κλάδοι στο git είναι ίδιοι με τους κλάδους στο github. Για να δημιουργήσετε ένα νέο κλάδο, εκτελέστε την εντολή στην κονσόλα:

$ git υποκατάστημα επιθυμητό όνομα

Για να μεταβείτε σε αυτόν τον κλάδο, εκτελέστε την εντολή:

$ git όνομα υποκαταστήματος ολοκλήρωσης αγοράς

για να επιστρέψετε στον κύριο κλάδο, πληκτρολογήστε:

$ git checkout master

μετονομασία κλάδου:

$ git υποκατάστημα -m νέο όνομα

ομάδα $ git υποκατάστημα σας επιτρέπει να προσδιορίσετε σε ποιο κλάδο βρισκόμαστε αυτήν τη στιγμή. Διαγράφει μια εντολή διακλάδωσης

$git branch –D όνομα κλάδου

Η συγχώνευση ενός κλάδου με τον κύριο γίνεται με την εντολή:

Όνομα κλάδου συγχώνευσης $ git

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

Δεσμεύει

Το όλο νόημα της χρήσης του git είναι στα commits. Η δέσμευση είναι μια λεγόμενη στιγμιότυπο της κατάστασης του έργου σε ένα ορισμένο στάδιο.
ανάπτυξη. Για παράδειγμα: έχουμε τη βιβλιοθήκη OsEngine, προσθέσαμε σε
είναι ένας νέος δείκτης και δεσμευμένος, στη συνέχεια αποφάσισε να διορθώσει κάποιο αρχείο
κινητήρα και μετά η εφαρμογή κολλάει ή δεν θέλει να λειτουργήσει σωστά. Προς την
να μην κάνουμε επιπλέον δουλειά και να μην τα διορθώσουμε όλα πίσω, μπορούμε απλά
επαναφορά σε προηγούμενη δέσμευση όταν η εφαρμογή λειτούργησε όπως θα έπρεπε. Αντίστοιχα
όλη η εργασία με το git περιστρέφεται γύρω από τη δημιουργία, τη διαγραφή, την επεξεργασία, τη συγχώνευση
δεσμεύει και διακλαδώνει.


Προσθήκη αρχείων στο ευρετήριο

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

$ git προσθέστε README

και το αρχείο README θα προστεθεί στο ευρετήριο, εάν πρέπει να καταχωρήσετε όλα τα ενημερωμένα και νέα αρχεία, στη συνέχεια εκτελέστε

$ git add .

Σημειώστε ότι είναι με μια τελεία στο τέλος και ένα κενό πριν από αυτήν.

Αφαίρεση αρχείων από το ευρετήριο

Εάν κατά λάθος δημιουργήσατε ένα περιττό αρχείο, τότε η εντολή επαναφοράς git θα σας βοηθήσει να το αφαιρέσετε από το ευρετήριο, για παράδειγμα, αφαιρέστε το αρχείο README από το ευρετήριο:

$git επαναφορά README

Εάν αλλάξετε γνώμη σχετικά με τη διατήρηση των αλλαγών που έγιναν στο αρχείο, εκτελέστε την εντολή

$ git checkout -- όνομα αρχείου

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

Δημιουργήστε μια δέσμευση

Τώρα μπορείτε να πραγματοποιήσετε τις αλλαγές, αυτό γίνεται χρησιμοποιώντας την εντολή:

$ git commit –m "Θα πρέπει να υπάρχει ένα σχόλιο εδώ"

Θα πρέπει να θυμόμαστε ότι η παρουσία ενός σχολίου είναι απαραίτητη προϋπόθεση. Το ιστορικό των αλλαγών μπορεί να προβληθεί με την εντολή

$ gitlog

$ git show θα εμφανίσει μόνο τις πιο πρόσφατες αλλαγές. Πατήστε q για έξοδο από τη λειτουργία αναπαραγωγής.

Το Git έχει τη δυνατότητα να ευρετηριάζει όλες τις αλλαγές και να δεσμεύει με μία εντολή:

$ git commit -a -m "σχόλιο σε εισαγωγικά"

A σημαίνει: προσθέστε όλες τις αλλαγές στο ευρετήριο πριν από τη δέσμευση.
-μ: σχόλιο.


Επεξεργασία, διαγραφή, δέσμευση

Εάν πρέπει να αναιρέσετε την τελευταία δέσμευση, χρησιμοποιήστε την εντολή:

$ git επαναφορά HEAD

Οι δεσμεύσεις υπολογίζονται από το 0 ξεκινώντας από την τελευταία, για παράδειγμα, εάν πρέπει να αναιρέσετε την τρίτη δέσμευση, θα πρέπει να εκτελέσετε:

$ git επαναφορά HEAD~2

Ομάδα $ επαναφορά git --soft HEAD~3 θα αφαιρέσει τις τελευταίες 3 δεσμεύσεις και θα επαναφέρει το έργο στην κατάσταση της τέταρτης δέσμευσης, ενώ θα διατηρήσει όλες τις αλλαγές των τριών τελευταίων δεσμεύσεων στο ευρετήριο.

$ reset git -- hard HEAD~3

θα καταργήσει εντελώς τις τρεις τελευταίες δεσμεύσεις.

Κατάσταση αρχείου

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


Πραγματοποίηση τοπικών αλλαγών σε απομακρυσμένο αποθετήριο


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

$ git push origin master

Σε αυτήν την περίπτωση, θα χρειαστεί να εισαγάγετε τη σύνδεση και τον κωδικό πρόσβασης από το github. Ωστόσο, η λήψη ενδέχεται να μην πραγματοποιηθεί. Ο λόγος μπορεί να βρίσκεται στο γεγονός ότι υπάρχουν αλλαγές στο απομακρυσμένο αποθετήριο που δεν είναι στο τοπικό. Για να βγείτε από την κατάσταση, πρέπει να πάρετε αυτά τα νέα
αλλάζει στο τοπικό αποθετήριο με την εντολή:

$git-pull



Χρήση πλήκτρων SSH


Για να απαλλαγείτε από την ανάγκη εισαγωγής στοιχείων σύνδεσης και κωδικού πρόσβασης κάθε φορά κατά την αποστολή αλλαγών σε απομακρυσμένο χώρο αποθήκευσης, μπορείτε να χρησιμοποιήσετε κλειδιά SSH. Πρώτα, πρέπει να δημιουργήσετε τα κλειδιά εκτελώντας την εντολή:

$ ssh-keygen

Στη συνέχεια, πατήστε enter 3 φορές και στον προεπιλεγμένο κατάλογο C:\Users\username\.sshθα εμφανιστεί ένας φάκελος με πλήκτρα. Πρέπει να ανοίξετε ένα αρχείο
id_rsa τύπου PUB σε οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου και αντιγράψτε τα περιεχόμενά του. Στη συνέχεια, μεταβείτε στο github στις ρυθμίσεις του λογαριασμού σας

Στη συνέχεια, στη στήλη στα αριστερά, επιλέξτε το στοιχείο: Πλήκτρα SSH και GPG και πατήστε το πράσινο κουμπί στο δεξί πλήκτρο Νέο SSH

ορίστε τον Τίτλο, στο πεδίο Κλειδί επικολλήστε τα δεδομένα που αντιγράφηκαν από το κλειδί και κάντε κλικ

Συγχώνευση κλαδιών στο github


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

και μετά

Σε αυτό το άρθρο, καλύψαμε τις βασικές εντολές git, είναι αρκετές για να ξεκινήσετε να εργάζεστε στο έργο OsEngine χρησιμοποιώντας το git και την υπηρεσία github.

Ευτυχείς δεσμεύσεις!

Είναι φυσικό οι άνθρωποι να αντιστέκονται στην αλλαγή. Αν το Git δεν ήταν το πράγμα σας όταν ξεκινήσατε για πρώτη φορά να εργάζεστε με συστήματα ελέγχου εκδόσεων, πιθανότατα νιώθετε πιο άνετα με το Subversion (SVN) .

Συχνά οι άνθρωποι λένε ότι το Git είναι πολύ περίπλοκο για αρχάριους. Ωστόσο, παρακαλώ να διαφέρω με αυτό.

Σε αυτό το σεμινάριο, θα σας δείξω πώς να χρησιμοποιείτε το Git στα έργα σας. Ας υποθέσουμε ότι χτίζετε ένα έργο από την αρχή και θέλετε να το διαχειριστείτε με το Git . Περπατώντας στη λίστα των βασικών εντολών θα σας δώσει μια ιδέα για το πώς να φιλοξενήσετε τον κώδικά σας στο cloud χρησιμοποιώντας το GitHub.

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

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

Εγκατάσταση του Git

Η επίσημη ιστοσελίδα του Git έχει λεπτομερείς πληροφορίεςσχετικά με την εγκατάστασή του σε Linux, Mac και Windows. Στην περίπτωσή μας, θα χρησιμοποιήσουμε το Ubuntu 13.04 για σκοπούς επίδειξης, όπου θα εγκαταστήσουμε το Git χρησιμοποιώντας το apt-get:

sudo apt-get install git

Αρχική εγκατάσταση

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

mkdir my_git_project cd my_git_project

Το πρώτο βήμα είναι να αρχικοποιήσετε το Git στον κατάλογο. Αυτό μπορεί να γίνει με την εντολή init, η οποία δημιουργεί έναν κατάλογο .git που περιέχει όλες τις πληροφορίες που σχετίζονται με το Git για το έργο σας.

git config --global user.name "Shaumik" git config --global user.email " [email προστατευμένο]" git config --global color.ui "auto"

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

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

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

Προετοιμασία αρχείων για δέσμευση

Το επόμενο βήμα είναι να δημιουργήσετε τα αρχεία στον κατάλογο. Μπορείτε να χρησιμοποιήσετε, για παράδειγμα, το πρόγραμμα επεξεργασίας κειμένου Vim. Σημειώστε ότι εάν πρόκειται να προσθέσετε το Git σε έναν ήδη υπάρχοντα κατάλογο, δεν χρειάζεται να κάνετε αυτό το βήμα:

Ελέγξτε την κατάσταση του αποθετηρίου

Τώρα που έχουμε μερικά αρχεία στο αποθετήριο μας, ας ρίξουμε μια ματιά στο πώς τα χειρίζεται το Git. Για να ελέγξετε την τρέχουσα κατάσταση ενός αποθετηρίου, χρησιμοποιήστε την εντολή git status:

Προσθήκη αρχείων στο Git για παρακολούθηση

Δεν έχουμε αρχεία για παρακολούθηση με το Git αυτήν τη στιγμή. Πρέπει να προσθέσουμε αρχεία ειδικά στο Git για να πούμε στο Git τι να παρακολουθεί.

Προσθέστε αρχεία χρησιμοποιώντας την εντολή προσθήκη:

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

Για να προσθέσετε πολλά αρχεία, μπορείτε να χρησιμοποιήσετε την ακόλουθη καταχώρηση εντολής (σημειώστε ότι έχουμε προσθέσει ένα ακόμη αρχείο για λόγους επίδειξης):

git προσθήκη myfile2 myfile3

Μπορείτε να χρησιμοποιήσετε το git add αναδρομικά, αλλά να είστε προσεκτικοί με αυτήν την εντολή. Υπάρχουν ορισμένα αρχεία (όπως μεταγλωττισμένα αρχεία) που συνήθως αποθηκεύονται εκτός ενός αποθετηρίου Git.

Εάν χρησιμοποιείτε την εντολή add αναδρομικά, θα προσθέσει όλα αυτά τα αρχεία εάν υπάρχουν στο αποθετήριο σας.

Διαγραφή αρχείων

Αλλά η εκτέλεση μιας απλής εντολής git rm θα αφαιρέσει το αρχείο όχι μόνο από το Git , αλλά και από το τοπικό σας σύστημα αρχείων! Προς την

Το Git έχει σταματήσει να παρακολουθεί το αρχείο, αλλά το ίδιο το αρχείο εξακολουθεί να βρίσκεται στο τοπικό σας σύστημα, εκτελέστε την ακόλουθη εντολή:

git rm -- αποθηκευμένη στην κρυφή μνήμη

Δεσμεύστε αλλαγές

Αφού τοποθετήσετε τα αρχεία σας, μπορείτε να τα δεσμεύσετε στο Git . Σκεφτείτε ότι μια δέσμευση αποτυπώνει μια συγκεκριμένη στιγμή στην οποία μπορείτε να επιστρέψετε για να αποκτήσετε πρόσβαση στο αποθετήριό σας σε εκείνο το σημείο.

Μπορείτε να επισυνάψετε ένα μήνυμα σε κάθε δέσμευση, το οποίο έχει το πρόθεμα -m:

git commit -m "Η πρώτη μου δέσμευση"

Παρέχετε χρήσιμα μηνύματα δέσμευσης γιατί θα σας βοηθήσουν να προσδιορίσετε τι έχετε αλλάξει σε αυτήν τη δέσμευση.

Αποφύγετε υπερβολικά γενικά μηνύματα όπως " Διορθώθηκαν σφάλματα". Εάν έχετε ένα πρόγραμμα παρακολούθησης προβλημάτων, μπορείτε να προσθέσετε μηνύματα στη φόρμα " Διορθώθηκε το σφάλμα #234».

Είναι καλή πρακτική να χρησιμοποιείτε το όνομα κλάδου ή το όνομα της δυνατότητας ως πρόθεμα στο μήνυμα δέσμευσης. Για παράδειγμα, " Διαχείριση περιουσιακών στοιχείων: προστέθηκε λειτουργία για δημιουργία αρχεία PDFπεριουσιακά στοιχεία'' είναι ένα μήνυμα με νόημα.

Το Git προσδιορίζει τις δεσμεύσεις προσθέτοντας έναν μεγάλο δεκαεξαδικό αριθμό σε κάθε δέσμευση. Κατά κανόνα, δεν χρειάζεται να αντιγράψετε ολόκληρη τη γραμμή, οι πρώτοι 5-6 χαρακτήρες είναι αρκετοί για να καθορίσετε την δέσμευσή σας.

Σημειώστε ότι στο στιγμιότυπο οθόνης, η πρώτη μας δέσμευση προσδιορίζεται από το 8dd76fc.

Περαιτέρω δεσμεύσεις

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

Μπορείτε να ελέγξετε τις αλλαγές σε αρχεία παρακολούθησης που έγιναν στο τελευταίο commit με την εντολή git diff. Εάν θέλετε να δείτε τις αλλαγές σε ένα συγκεκριμένο αρχείο, χρησιμοποιήστε την εντολή git diff :

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

Μπορείτε να αποφύγετε τη χρήση αυτής της εντολής χρησιμοποιώντας το πρόθεμα -a για την εντολή git commit, το οποίο θα προσθέσει όλες τις αλλαγές στα αρχεία που παρακολουθούνται.

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

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

Αφού τοποθετήσετε τα αρχεία σας, μπορείτε να ξεκινήσετε τη δέσμευση. Ανέφερα ότι κάθε δέσμευση μπορεί να έχει ένα μήνυμα που σχετίζεται με αυτό, το οποίο τοποθετούμε με -m .

Ωστόσο, είναι δυνατό να εισαγάγετε ένα μήνυμα σε πολλές γραμμές χρησιμοποιώντας την εντολή git commit, η οποία ανοίγει μια διαδραστική φόρμα εγγραφής:

Διαχείριση έργου

Για να δείτε το ιστορικό του έργου σας, μπορείτε να εκτελέσετε την ακόλουθη εντολή:

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

Για να δείτε λεπτομερείς πληροφορίεςσχετικά με μια συγκεκριμένη δέσμευση και τα αρχεία που έχουν αλλάξει, εκτελέστε την ακόλουθη εντολή:

git-show

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

Κώδικας φιλοξενίας στο cloud

Τώρα που μάθατε πώς να διαχειρίζεστε τον κώδικα στο σύστημά σας, ήρθε η ώρα να φιλοξενήσετε τον κώδικά σας στο cloud.

Τα συστήματα ελέγχου κατανεμημένων εκδόσεων (DVCS) αντικαθιστούν σταδιακά τα κεντρικά. Εάν δεν χρησιμοποιείτε ακόμα ένα από αυτά, τώρα είναι η ώρα να το δοκιμάσετε.

Σε αυτό το άρθρο, θα προσπαθήσω να δείξω πώς μπορείτε να αρχίσετε γρήγορα να πειραματίζεστε με το git χρησιμοποιώντας τον ιστότοπο github.com.

Αυτό το άρθρο δεν θα καλύψει τις διαφορές μεταξύ διαφορετικών DVCS. Επίσης, η εργασία με το git δεν θα εξεταστεί λεπτομερώς, υπάρχουν πολλές καλές πηγές για αυτό το θέμα, τις οποίες θα αναφέρω στο τέλος του άρθρου.

Έτσι, ο ιστότοπος github.com τοποθετείται ως υπηρεσία web για τη φιλοξενία έργων χρησιμοποιώντας το σύστημα ελέγχου έκδοσης git, καθώς και κοινωνικό δίκτυογια προγραμματιστές. Οι χρήστες μπορούν να δημιουργήσουν απεριόριστο αριθμό αποθετηρίων, για καθένα από τα οποία παρέχεται ένα wiki, ένα σύστημα παρακολούθησης προβλημάτων, είναι δυνατή η διεξαγωγή ελέγχων κώδικα και πολλά άλλα. Το GitHub είναι αυτή τη στιγμή η πιο δημοφιλής υπηρεσία του είδους του, ξεπερνώντας το Sourceforge και το Google Code.

Για έργα ανοιχτού κώδικα, η χρήση του ιστότοπου είναι δωρεάν. Εάν χρειάζεται να έχετε ιδιωτικά αποθετήρια, μπορείτε να κάνετε αναβάθμιση σε πρόγραμμα επί πληρωμή:

Ας ξεκινήσουμε με την εγγραφή. Ακολουθήστε τον σύνδεσμο github.com/signup/free και εισαγάγετε τα στοιχεία σας.
Μετά την εγγραφή, φτάνουμε στον Πίνακα ελέγχου του λογαριασμού μας:

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

Αλλά πρώτα, ας εγκαταστήσουμε το git και ας το ρυθμίσουμε ώστε να λειτουργεί με τον ιστότοπο.

Εάν χρησιμοποιείτε Windows, κάντε λήψη και εγκαταστήστε το msysgit . Αυτή είναι η έκδοση κονσόλας του git για Windows (επιπλέον η ιστορία θα βασίζεται στο παράδειγμα αυτού του λειτουργικού συστήματος).
Οδηγίες για MacOS X (αγγλ.)
Οδηγίες για Linux (αγγλ.)
Δεν πρέπει να υπάρχουν προβλήματα, απλώς κάντε κλικ στο Επόμενο παντού. Μετά την εγκατάσταση, επιλέξτε Git Bash Explorer από το μενού περιβάλλοντος:

Ή μέσω του Git Bash.lnk στον φάκελο με το εγκατεστημένο πρόγραμμα:

Γράφουμε τις ρυθμίσεις δεδομένων και αλλαγής γραμμής στην κονσόλα:
git config --global user.name "το όνομά σου"
git config --global user.email "η αλληλογραφία σας"
git config --global core.autocrlf true
git config --global core.safecrlf true

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

Για όσους προτιμούν το gui, υπάρχουν αρκετά τέτοια εργαλεία για εργασία με το git για Windows. Τα δύο βασικά είναι το SmartGit (cross-platform) και το TortoiseGit. Και τα δύο είναι καλά και ποιο να χρησιμοποιήσω είναι θέμα γούστου. Θα περιγράψω τη συνεργασία με το TortoiseGit.
Για τις παπαρούνες υπάρχει και επιλογή giu.

  • ο επίσημος πελάτης από το GitHub - κατά τη γνώμη μου, είναι ακόμα αρκετά υγρός.
  • GitX - Προσωπικά δεν μου άρεσε
  • GitBox - ο πιο ακολουθούμενος τρόπος mac, συνιστώ ανεπιφύλακτα να το δοκιμάσετε

Σχετικά με το git στα ρωσικά:
habrahabr.ru/blogs/Git/106912 "Επιτυχημένο μοντέλο διακλάδωσης για το git" - μετάφραση ενός καλού αγγλικού άρθρου
Διαδραστικό μάθημα githowto.com για την εργασία με το git από την κονσόλα
habrahabr.ru/blogs/Git/106912 "Γιατί git" + συζήτηση
habrahabr.ru/blogs/development/68341 "Git για μετάβαση από το SVN" + συζήτηση

Τα συστήματα ελέγχου κατανεμημένων εκδόσεων (DVCS) αντικαθιστούν σταδιακά τα κεντρικά. Εάν δεν χρησιμοποιείτε ακόμα ένα από αυτά, τώρα είναι η ώρα να το δοκιμάσετε.

Σε αυτό το άρθρο, θα προσπαθήσω να δείξω πώς μπορείτε να αρχίσετε γρήγορα να πειραματίζεστε με το git χρησιμοποιώντας τον ιστότοπο github.com.

Αυτό το άρθρο δεν θα καλύψει τις διαφορές μεταξύ διαφορετικών DVCS. Επίσης, η εργασία με το git δεν θα εξεταστεί λεπτομερώς, υπάρχουν πολλές καλές πηγές για αυτό το θέμα, τις οποίες θα αναφέρω στο τέλος του άρθρου.

Έτσι, ο ιστότοπος github.com τοποθετείται ως υπηρεσία web για τη φιλοξενία έργων χρησιμοποιώντας το σύστημα ελέγχου έκδοσης git, καθώς και ως κοινωνικό δίκτυο για προγραμματιστές. Οι χρήστες μπορούν να δημιουργήσουν απεριόριστο αριθμό αποθετηρίων, για καθένα από τα οποία παρέχεται ένα wiki, ένα σύστημα παρακολούθησης προβλημάτων, είναι δυνατή η διεξαγωγή ελέγχων κώδικα και πολλά άλλα. Το GitHub είναι αυτή τη στιγμή η πιο δημοφιλής υπηρεσία του είδους του, ξεπερνώντας το Sourceforge και το Google Code.

Για έργα ανοιχτού κώδικα, η χρήση του ιστότοπου είναι δωρεάν. Εάν χρειάζεται να έχετε ιδιωτικά αποθετήρια, μπορείτε να κάνετε αναβάθμιση σε πρόγραμμα επί πληρωμή:

Ας ξεκινήσουμε με την εγγραφή. Ακολουθήστε τον σύνδεσμο github.com/signup/free και εισαγάγετε τα στοιχεία σας.
Μετά την εγγραφή, φτάνουμε στον Πίνακα ελέγχου του λογαριασμού μας:

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

Αλλά πρώτα, ας εγκαταστήσουμε το git και ας το ρυθμίσουμε ώστε να λειτουργεί με τον ιστότοπο.

Εάν χρησιμοποιείτε Windows, κάντε λήψη και εγκαταστήστε το msysgit . Αυτή είναι η έκδοση κονσόλας του git για Windows (επιπλέον η ιστορία θα βασίζεται στο παράδειγμα αυτού του λειτουργικού συστήματος).
Οδηγίες για MacOS X (αγγλ.)
Οδηγίες για Linux (αγγλ.)
Δεν πρέπει να υπάρχουν προβλήματα, απλώς κάντε κλικ στο Επόμενο παντού. Μετά την εγκατάσταση, επιλέξτε Git Bash Explorer από το μενού περιβάλλοντος:

Ή μέσω του Git Bash.lnk στον φάκελο με το εγκατεστημένο πρόγραμμα:

Γράφουμε τις ρυθμίσεις δεδομένων και αλλαγής γραμμής στην κονσόλα:
git config --global user.name "το όνομά σου"
git config --global user.email "η αλληλογραφία σας"
git config --global core.autocrlf true
git config --global core.safecrlf true

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

Για όσους προτιμούν το gui, υπάρχουν αρκετά τέτοια εργαλεία για εργασία με το git για Windows. Τα δύο βασικά είναι το SmartGit (cross-platform) και το TortoiseGit. Και τα δύο είναι καλά και ποιο να χρησιμοποιήσω είναι θέμα γούστου. Θα περιγράψω τη συνεργασία με το TortoiseGit.
Για τις παπαρούνες υπάρχει και επιλογή giu.

  • ο επίσημος πελάτης από το GitHub - κατά τη γνώμη μου, είναι ακόμα αρκετά υγρός.
  • GitX - Προσωπικά δεν μου άρεσε
  • GitBox - ο πιο ακολουθούμενος τρόπος mac, συνιστώ ανεπιφύλακτα να το δοκιμάσετε

Σχετικά με το git στα ρωσικά:
"A good branching model for git" - μετάφραση καλού αγγλικού άρθρου
Διαδραστικό μάθημα githowto.com για την εργασία με το git από την κονσόλα
«Γιατί γιτ» + συζήτηση
"Git για μετεγκατάσταση από SVN" + συζήτηση

mob_info