Junior
Τι γνωρίζετε για το εργαλείο Git;
sobes.tech AI
Απάντηση από AI
Το Git είναι ένα κατανεμημένο σύστημα ελέγχου εκδόσεων.
Βασικές έννοιες:
- Αποθετήριο: Αποθήκη του έργου με το ιστορικό των αλλαγών.
- Commit: Στιγμιότυπο της κατάστασης των αρχείων του έργου σε μια συγκεκριμένη στιγμή.
- Κλάδος (Branch): Ανεξάρτητη γραμμή ανάπτυξης που επιτρέπει την εργασία σε νέες λειτουργίες ή διορθώσεις χωρίς να επηρεάζει τον κύριο κλάδο.
- Merge (Ενοποίηση): Συνένωση αλλαγών από έναν κλάδο σε έναν άλλο.
- Pull Request (PR): Αίτημα για συγχώνευση αλλαγών από έναν κλάδο σε έναν άλλο, συχνά με συζήτηση και αναθεώρηση κώδικα.
- Απομακρυσμένο αποθετήριο (Remote): Έκδοση του αποθετηρίου που αποθηκεύεται σε απομακρυσμένο διακομιστή (π.χ., GitLab, GitHub, Bitbucket).
Βασικές εντολές:
git init: Δημιουργία ενός νέου αποθετηρίου.git clone <url>: Αντιγραφή απομακρυσμένου αποθετηρίου.git add <αρχείο(α)>: Προσθήκη αλλαγών στην περιοχή staging.git commit -m "Μήνυμα commit": Δημιουργία commit.git status: Εμφάνιση της κατάστασης του εργασιακού καταλόγου και της περιοχής staging.git log: Εμφάνιση ιστορικού commits.git branch <όνομα κλάδου>: Δημιουργία νέου κλάδου.git checkout <όνομα κλάδου>: Μετάβαση σε άλλο κλάδο.git merge <όνομα κλάδου>: Ενοποίηση του καθορισμένου κλάδου με τον τρέχοντα.git pull: Λήψη των τελευταίων αλλαγών από το απομακρυσμένο αποθετήριο και συγχώνευση.git push: Αποστολή των τοπικών commits στο απομακρυσμένο αποθετήριο.git remote add origin <url>: Προσθήκη απομακρυσμένου αποθετηρίου με το όνομαorigin.git fetch: Λήψη αλλαγών από το απομακρυσμένο αποθετήριο χωρίς αυτόματη συγχώνευση.
Είμαι εξοικειωμένος με ροές εργασίας όπως το GitHub Flow ή παρόμοιες (δημιουργία κλάδων χαρακτηριστικών, PR, αναθεώρηση κώδικα, συγχώνευση στον κύριο κλάδο). Ξέρω πώς να επιλύω συγκρούσεις συγχώνευσης.
Χρησιμοποιώ το Git καθημερινά για ομαδική εργασία σε έργα.