Θερινό Σχολείο, 14 20 Ιουλίου 2014. Εισαγωγή στο. Αχιλλέας Πιπινέλης. Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

Σχετικά έγγραφα
Σεμινάριο Git & GitLab. Τάκης Παναγόπουλος Νικόλας Μπομπέτσης

Σεμινάριο Git & GitLab. Γιώργος Τσιάτσιος Δημήτρης Κάσσος

Εργαστήριο 2. Εισαγωγή στο Git Versioning System

Subversion. Τριγάζη Ελισάβετ. Επιβλέπων: Μηνάς Δασυγένης

Σεμινάριο Git & GitHub. Θέμης Παπαμελετίου Διονύσης Ζήνδρος

Βάιος Κολοφωτιάς Msc Informational Systems. Μια εισαγωγή στο GIT

Version Control Systems Mercurial SCM. Μανώλης Κιαγιάς

Εισαγωγή στα SCM εργαλεία και στο Subversion

SUBVERSION. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Οδηγός για το... Git & Github

Το Open Eclass ως Σύστημα Διαχείρισης Μάθησης

TasPython. Εισαγωγή στο Mercurial

Αρχιτεκτονική Υπολογιστών

Σεμινάριο Git & GitHub Ημέρα 2

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Εγκατάσταση και Διαχείριση Σχολικών Εργαστηρίων με Λογισμικό Ανοικτού Κώδικα

Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών ΗΥ463 Συστήματα Ανάκτησης Πληροφοριών Χειμερινό Εξάμηνο

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

3 ο ΓΕΛ Τρικάλων Ομάδα: Σταμάτης Νανάκης Δημήτρης Μπρουζούκης Τζανής Ντίνο. Εργασία Project

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Εργαλεία Ανάπτυξης Κώδικα ΕΛ/ΛΑΚ. Απόστολος Βόγκλης Βασίλειος Καραβασίλης Μονάδα Αριστείας ΕΛΛΑΚ ΕΤΕΠΗ 25/06/2014

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΊΑ 8 - ΑΝΆΠΤΥΞΗ

ΣΕΠΕΗΥ με Ubuntu/LTSP Διαχείριση ΣΕΠΕΗΥ με Ubuntu/LTSP

Το ελεύθερο λογισμικό στη ζωή μας

ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ ΠΡΟΣΩΠΙΚΟ ΥΠΟΛΟΓΙΣΤΗ (MS WINDOWS, LINUX, MACOS)

Αναζήτηση στον Ιστό. Πληκτρολόγηση του URL: στο πλαίσιο αναζήτησης του Mozilla Firefox. Enter ή κλικ στο Αναζήτηση

Σύντομος Οδηγός Github Μηνάς Δασυγένης (

Βασικές Έννοιες Διαδικτύου, Wordpress και BuddyPress

Το ηλεκτρονικό ταχυδρομείο: Aφορά στην αποστολή και λήψη μηνυμάτων με συγκεκριμένη δομή και με συγκεκριμένα πρωτόκολλα. Ο αποστολέας και ο παραλήπτης

Θερινό Σχολείο, Ιουλίου slim. Δημοσθένης Νικούδης. Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

Αγροτική Ανάπτυξη Περιβάλλον

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

Άδειες open source Εργαλεία Ανάπτυξης Κώδικα ΕΛ/ΛΑΚ. Απόστολος Βόγκλης Βασίλειος Καραβασίλης Μονάδα Αριστείας ΕΛΛΑΚ ΕΤΕΠΗ 22/10/2014

ΚΕΦΑΛΑΙΟ 1. Εισαγωγή στην Python. 1.1 Εισαγωγή

Άδειες open source Εργαλεία Ανάπτυξης Κώδικα ΕΛ/ΛΑΚ. Απόστολος Βόγκλης Βασίλειος Καραβασίλης Μονάδα Αριστείας ΕΛΛΑΚ ΕΤΕΠΗ 9/3/2015

Οδηγίες Λήψης & Εγκατάστασης του Jitsi 2.0

Αποθετήρια. Κλειώ Σγουροπούλου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

Χρήση του RAW ORF. Κείμενο, παρουσίαση, έρευνα: Ιορδάνης Σταυρίδης DNG ARW X3F DCR NEF CRW RAW RAF CR2 SRF MRW

Μονάδες Αριστείας ΕΛ/ΛΑΚ. 28/9/2014 Μονάδες Αριστείας ΕΛ/ΛΑΚ 1

Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας. Παρουσίαση Μονάδας & Δράσεων. Ιφιγένεια Φουντά Επιστημονικά Υπεύθυνη Μονάδας Αριστείας ΕΛ/ΛΑΚ του ΤΕΙ Αθήνας

Λογισμικό - Προγράμματα

Git - Version Control System & GoogleCode

Ασφάλεια στο διαδίκτυο Γονικός Έλεγχος

Ηλεκτρονική Μάθηση & Συστήματα που τη διαχειρίζονται

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΙΑ 2 ΑNAΠΤΥΞΗ

Linux Terminal Server Project

ΕΙΣΑΓΩΓΗ ΣΤΑ ΠΡΟΓΡΑΜΜΑΤΑ ΚΑΙ ΤΙΣ ΕΦΑΡΜΟΓΕΣ ΤΟΥ

Μονάδες Αριστείας ΕΛ/ΛΑΚ. 08/05/15 Μονάδες Αριστείας ΕΛ/ΛΑΚ 1

Το FreeBSD Project. Γιώργος Κεραμίδας

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Σχολικά Εργαστήρια με ΕΛ/ΛΑΚ μία ολοκληρωμένη πρόταση από το έργο της Τεχνικής Στήριξης ΣΕΠΕΗΥ

Συμπεράσματα Πρόταση για υιοθέτηση του ΕΛ/ΛΑΚ στο Κυπριακό Δημόσιο Τομέα. Τοπική Κοινότητα Χρηστών Ubuntu Κύπρου

29 Μαρτίου Οδηγός Χρήσης VPN. Πανεπιστήμιο Κύπρου Τμήμα Πληροφορικής. Ομάδα Τεχνικής Υποστήριξης Υπεύθυνος: Ανδρέας Κασενίδης. Έκδοση 4.

Το Έργο Συνεισφοράς. Ανάπτυξη εφαρμογής για κινητές συσκευές του Σ.Δ.Μ. Open eclass. Θερινό Σχολείο, Ιουλίου 2014

Fedora, Google, Transifex κι άλλα μυστήρια

e-pyxis: Περιβάλλον ασύγχρονης ηλεκτρονικής εκµάθησης eschoollib

Απομακρυσμένη Πρόσβαση και Εντολές Ελέγχου και Υποστήριξης

Ubuntu / LTSP / sch-scripts

Σενάριο workshop 1ης εβδομάδας

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

Πώς τροποποιούμε το Invenio;

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 4 η. Βασίλης Στεφανής

Εφαρµογές WebGIS Open Source

Εγκατάσταση του εκτυπωτή από το CD λογισμικού και τεκμηρίωσης

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΊΑ 6. YΠΗΡΕΣΙΑ ΖΩΝΤΑΝΗΣ

ΙΔΡΥΜΑΤΙΚΟ ΑΠΟΘΕΤΗΡΙΟ ΤΕΙ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ

Διαδραστικός πίνακας. Ναλμπάντη Θεοδώρα Σχολική Σύμβουλος Πληροφορικής Θράκης

Λειτουργικό Σύστημα Linux ~ Μια σύντομη εισαγωγή

SCRIPTUM. Οδηγός Εγκατάστασης SCRIPTUM

Πτυχιακές Εργαστήριο Επικοινωνίας Ανθρώπου-Μηχανής και Εικονικής Πραγματικότητας

Σύντομη εισαγωγή στο λειτουργικό σύστημα Linux

Λογισμικό κατασκευής εννοιολογικών χαρτών. Α. Αθανασόπουλος

Μανώλης Κιαγιάς, MSc. Aiolos Project. Αρχικές Ρυθμίσεις SSH και εγκατάσταση OpenMPI


Αξιοποίηση της Τεχνολογίας των Εικονικών Μηχανών στην Επαγγελματική Εκπαίδευση και την Κατάρτιση Πληροφορικής. Βασιλάκης Βασίλειος Τζανάκης Δημήτριος

Π : Εγχειρίδια χρήσης της υπηρεσίας για τα κύρια υποστηριζόμενα Λειτουργικά

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

Συστήματα Αναμονής (Queuing Systems)

Git - Version Control System

Περιεχόµενα. Λίγα λόγια από τους συγγραφείς...9. Για τον εκπαιδευτή και το γονέα Αριθµοί και Υπολογισµοί (Numbers and Calculations)

sch-scripts Προσαρμογή του Ubuntu για τα ελληνικά σχολεία

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Openshift. Βασίλειος Καραβασίλης Μονάδα Αριστείας ΕΛΛΑΚ ΕΤΕΠΗ 16/07/2014

Εφαρμογές Υπολογιστών. Κεφάλαιο 4 Λογισμικό Συστήματος

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΊΑ 4 - ΑΝΆΠΤΥΞΗ

Ο Οδηγός γρήγορης εκκίνησης

Χρησιμοποίηση Open Source προγραμμάτων σε εργασιακό περιβάλλον

Παρουσίαση και Σύγκριση Πληροφοριακών Συστημάτων Επιχειρησιακής Έρευνας

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

Οδηγός Χρήσης προσωπικού χώρου και επιπλέον χώρου αποθήκευσης δεδομένων στο Τμήμα Πληροφορικής

ΠΡΟΓΡΑΜΜΑ ΑΠΟΜΑΚΡΥΣΜΕΝΗΣ ΕΙΣΑΓΩΓΗΣ ΒΑΘΜΟΛΟΓΙΩΝ ΑΠΟ ΔΙΔΑΣΚΟΝΤΕΣ

ΣΕΜΙΝΑΡΙΟ ΔΙΚΤΥΩΝ ΜΑΡΤΙΟΣ ΜΑΙΟΣ 2010 ΔΙΟΡΓΑΝΩΣΗ ΑΜΠΑΡΙΩΤΗΣ ΑΠΟΣΤΟΛΟΣ ΓΙΑΜΜΑΚΗΣ ΓΙΑΝΝΗΣ ΛΕΒΑΝΤΗΣ ΟΔΥΣΣΕΑΣ ΠΑΠΑΔΟΠΟΥΛΟΣ ΜΑΡΙΟΣ ΨΙΑΧΟΣ ΧΡΗΣΤΟΣ

Χαρτογράφηση με Ανοιχτό Λογισμικό GIS

Κάντε κλικ για έναρξη

Python και Android. Νίκος Νοδαράκης. 17 Μαΐου 2010

Οόρος«thin» 13η Συνάντηση Εκπαιδευτικών Πληροφορικής. Thinclients 2/4. Υπολογιστικό μοντέλο Thinclients 1/4. Τεχνολογία Τhinclient Edubuntu LTSP

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Κεφάλαιο 4: Λογισμικό Συστήματος

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Transcript:

Θερινό Σχολείο, 14 20 Ιουλίου 2014 Εισαγωγή στο Αχιλλέας Πιπινέλης Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

Βασικές πληροφορίες 2 Το Git αρχικά σχεδιάστηκε και αναπτύχθηκε από τον Linus Torvalds για την ανάπτυξη του Linux kernel το 2005. Είναι το πιο διαδεδομένο σύστημα ελέγχου εκδόσεων (version control system) Επιτρέπει ομάδες ατόμων να δουλεύουν στο ίδιο αντικείμενο (συχνά κώδικας) την ίδια στιγμή, χωρίς ο ένας να μπλέκεται με τον άλλο. Είναι ένα αποκεντρωμένο σύστημα ελέγχου εκδόσεων.

Βασικές πληροφορίες 3 Είναι ένα σύστημα που καταγράφει τις αλλαγές σε ένα αρχείο ή ένα σετ αρχείων χρονικά (snapshots), έτσι ώστε αργότερα μπορείς να ανακαλέσεις συγκεκριμένες εκδόσεις αυτών των αρχείων. Στην πραγματικότητα, κάθε τύπος αρχείου ενός υπολογιστή μπορεί να τοποθετηθεί υπό version control.

Χαρακτηριστικά 4 Αποκεντρωμένο (DVCS: Decentralized Version Control System ): ο καθένας έχει ένα κλώνο τοπικά στον υπολογιστή του. Υποστήριξη για μη γραμμική ανάπτυξη λογισμικού (branches). Συμβατότητα με υπάρχοντα συστήματα/πρωτόκολα: κάθε repository μπορεί να δημοσιευτεί με http/ftp/ssh/rsync P2p αρχιτεκτονική σε αντίθεση με τα Concurrent Version Systems (CVS) όπου είναι αρχιτεκτονικής client-server (πχ subversion)

Ποιος χρησιμοποιεί git; 5 Κάθε developer που σέβεται τον εαυτό του :) Όποιος θέλει να έχει ένα σύστημα αποθήκευσης και τη δυνατότητα rollback σε μια προηγούμενη έκδοση ενός αρχείου. Κάποιος θα μπορούσε να πει πως μοιάζει με το σύστημα του wiki. Άτομα που δουλεύουν πάνω στον ίδιο κώδικα απομακρυσμένα. Ακόμα και για τη συγγραφή e-books.

Βασικές έννοιες: commits 6 Κάθε commit είναι ένα snapshot των αρχείων που έχουμε υπό version control. Χαρακτηρίζεται μοναδικά από τον αλγόριθμο SHA-1. Περιέχει πληροφορίες όπως: Ημερομηνία/ώρα καταγραφής Όνομα/mail του/της commiter Μικρή περιγραφή του λόγου/αλλαγών που έγινε το commit

Βασικές έννοιες: commits 7 Με την εντολή git log μπορούμε να δούμε τα παραπάνω

Βασικές έννοιες: repository 8 Ελληνιστί αποθετήριο. Προτιμήστε το repository ή repo. Ένας φάκελος που περιέχει όλα τα αρχεία που είναι υπό του συστήματος ελέγχου εκδόσεων. Είναι ένα γράφημα με commits. Στο σχήμα κάθε αριθμός αντιστοιχεί σε ένα commit. Τι παρατηρείτε;

Βασικές έννοιες: repository 9 Τα βελάκια δείχνουν προς τα πίσω Κάθε commit ξέρει μόνο το γονικό commit αφού τα παιδιά δεν έχουν δημιουργηθεί ακόμα. Έτσι ένα repo έιναι σαν μία μονή συνδεδεμένη λίστα. Δεν μπορεί να είναι διπλή!

Βασικές έννοιες: branch 10 Τυπικά, η κορυφή μιας συνδεδεμένης λίστας έχει ένα όνομα. Αυτό το όνομα είναι το όνομα του BRANCH (με πράσινο χρώμα).

Βασικές έννοιες: branch 11 Όπως είπαμε ένα repository είναι ένα γράφημα. Ειδικότερα, περισσότεροι από ένας κόμβος μπορούν να δείχνουν στον ίδιο γονικό κόμβο. Σε αυτή την περίπτωση κάθε φύλλωμα είναι ένα branch και θα έχει ένα όνομα.

Βασικές έννοιες: branch 12 Π ερισσότερα από ένα branches

Βασικές έννοιες: git URL 13 Τα git repos μπορούν να προσπελαστούν με το να παρέχουν μία διεύθυνση στο internet. Τυπικά, υπάρχουν 4 είδη git URLs: ssh: ssh://[user@]host.xz[:port]/path/to/repo.git/ http: http[s]://host.xz[:port]/path/to/repo.git/ git: git://host.xz[:port]/path/to/repo.git/ local file: file:///full/path/to/reponame

Βασικές έννοιες: clone 14 git clone <repo_url> Αποθηκεύει τοπικά στον υπολογιστή μας το απομακρυσμένο repository. Ουσιαστικά είναι ένας πιστός κλώνος που περιλαμβάνει όλη την ιστορία του συγκεκριμένου repository.

Βασικές έννοιες: clone 15 Παράδειγμα: git clone https://git.torproject.org/tor.git Με την παραπάνω εντολή θα δημιουργηθεί ένας κατάλογος (φάκελος) με όνομα tor, μέσα του θα αρχικοποιηθεί ένας.git κατάλογος με όλες τις πληροφορίες του ιστορικού των commits και θα έχουμε ένα πιστό αντίγραφο της τελευταίας έκδοσης του κώδικα.

16 Εγκατάσταση git

Εγκατάσταση git 17 WINDOWS http://msysgit.github.io/ LINUX Fedora/RedHat: yum install git Debian/Ubuntu: aptitude install git Arch: pacman -S git OS X brew install git

GitHub: collaborating on code 18 Μία online υπηρεσία που παρέχει δωρεάν χώρο για το διαμοιρασμό ελεύθερου λογισμικού και εργαλεία για τη συνεργασία μεταξύ ατόμων πάνω σε ένα project. Αρνητικά: δεν είναι open source...

Hands-on workshop 19 h ttp s://try.gith u b.io

Χρήσιμα links 20 http://git-scm.com /book/ http://gitready.com / http ://gitolite.com /gcs.htm l https://www.a tla ssian.com /git/tu toria l http://gitref.org / Linus Torva ld s on git (video) https://dbrgn.ch/slides/20130207_getting_git/

Σας ευχαριστώ πολύ Ερωτήσεις; Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας