Περί github. Τι είναι; Πως λειτουργεί; Το χρειαζόμαστε όλοι;

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

Έχω περάσει τόσες φορές από το github και ακόμα δεν ξέρω τι είναι αυτό το μαραφέτι. Εντάξει είδα επιγραμματικά αυτό εδώ στη βικιπέδια GitHub - Βικιπαίδεια
Τα ερωτήματα μου - όχι και τόσο συγκεκριμένα - είναι για το πως χρησιμοποιείται.

Να κάνω λογαριασμό;
Ή ο λογαριασμός είναι πιο πολύ για σας τους κομπιουτεράδες; Που θα ανεβάσετε ας πούμε ένα κώδικα που γράψατε, μία εφαρμογή και τέτοια;

Τι φιλοξενείται εκεί πέρα;
Θυμάμαι που έφτανα εκεί ψάχνοντας μία λύση για κάποια δραστηριότητα που θέλω να κάνω. θυμάμαι ένα πράσινο κουμπάκι κάπου πάνω δεξιά όπου έλεγε “Clone” και το πάταγα και κατέβαινε έτοιμη εφαρμογή είτε σε .deb είτε tar όπου με οδηγίες από το σάιτ που διάβαζα πληκτρολογούσα μια σειρά εντολών και εγκαθιστούσα αυτό που ήθελα.

Θυμάμαι ότι υπάρχει και εντολή git
git μπλα μπλα αυτό και κάναμε τη δουλειά μας.

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

  1. Γράψε αυτή τη γραμμή στο /etc/τάδε και αποθήκευσέ το
  2. Κάνε εκτελέσιμο το τάδε σκριπτάκι και βάλτο στο home σου
    κλπ.

Για όλα αυτά έχετε κάποια περιληψούλα;
(Τώρα βλέπω στο synaptic ότι υπάρχει η εφαρμογή git. θα τη βάλω λογικά ε;)

1 «Μου αρέσει»

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

Αυτού του είδους την δουλειά και απείρως άλλα πράγματα μαζί τα προσφέρει σαν δυνατότητες το εργαλείο git. :git:

Συγγραφέας - δημιουργός του εργαλείου είναι ο γνωστό σε όλους Linus Torvalds που είναι και ο “μπαμπάς” του linux kernel :tux:.

Το git χρησιμοποιείται είτε μέσω γραμμής εντολών στην μορφή που περιγράφεις παραπάνω git clone https://blah.blah.git είτε μέσω κάποιου προγράμματος που προσφέρει gui για πιο εύκολη και γρήγορη χρήση.

Αυτά όμως συμβαίνουν στο pc του προγραμματιστή. Η επόμενη δουλειά είναι να γίνει κάποιος server στον οποίο θα συγχρονίζει τις local αλλαγές (είτε σαν backup, είτε για τον διαμοιρασμό με άλλους προγραμματιστές). Θα είναι λοιπόν με την ορολογία του git ένα remote branch που θα pushάρει κώδικα ο προγραμματιστής.

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

Στην περίπτωση του open source χρησιμεύει πάρα πολύ ένα τέτοιου είδους εργαλείο καθώς μπορεί ο καθένας να έχει πρόσβαση στον κώδικα και στο ιστορικό. Μπορεί να κάνει fork τον κώδικα αυτόν, να τον εξελίξει και κατόπιν να στείλει στον δημιουργό ώστε να συμπεριληφθεί η “εξέλιξη” στο επόμενο release του προγράμματος.

Το github, gitlab, bitbucket κ.α. είναι όλα πλατφόρμες που υποστηρίζουν την δυνατότητα να είναι τα αποθετήρια (repositories) ενός local git, σχολιασμό κώδικα, γραφική απεικόνιση του ιστορικού, πίνακες ανάθεσης εργασιών κλπ.

Όσον αφορά την ερώτηση περί δημιουργίας λογαριασμού ή όχι. Πλέον σε έναν μικρό βαθμό έχουν καταλήξει να είναι και λίγο σαν social media φάση, καθώς γίνονται σχολιασμοί πάνω σε απόψεις περί διορθώσεων, βελτιώσεων κλπ. Επίσης έχεις την δυνατότητα να κάνεις star κάποιο repo, fork (το ανέφερα και παραπάνω, είναι η δυνατότητα να πάρεις τον κώδικα κάποιου σε ένα δικό σου repo και να τον συνεχίσεις από εκεί και πέρα.) κ.α.

Αυτά σε γενικές γραμμές. Αν δεν σε κάλυψα σε κάτι ρώτα και πάλι!

5 «Μου αρέσει»

Το git είναι το πρώτο εργαλείο που θα έπρεπε να διδασκόμαστε στο σχολείο.
Όλες οι τεχνολογικές εξελίξεις του πολιτισμού μας βρίσκονται εκεί.
Μπορείς αν θες για παράδειγμα να δεις τον κώδικα του οχήματος που εξερευνά τον Άρη.
Μαθαίνεις επίσης τι θα πει κοινότητα, συνεισφορά, διαπολιτισμικότητα, πράγματα δηλαδή που γνώριζαν οι παππούδες μας.
GitHub bitbucket gitlab gitea gîtee κ.α.
Στο πανεπιστήμιο κόπηκα σε ένα μάθημα με βαθμό 2 γιατί κρατούσα σημειώσεις στο gitlab και η καθηγήτρια νόμιζε ότι έστελνα μηνύματα στο βιμπερ.:grinning:

6 «Μου αρέσει»

Σας ευχαριστώ και τους δύο. Χρήστο όχιι δεν θέλω να ρωτήσω κάτι άλλο. Θα επεξεργαστώ (αναλογιστώ) αυτά που έγραψες και εν καιρώ θα μπω κι άλλο στο νόημα.Θυμάμαι ότι έψαχνα κάτι για wake on lan ή wake on wireless lan (τα ψάχνω και δυο αυτές τις μέρες). ένας τύπος έλεγε “δείτε στο github μου” κάτι σχετικό. Ενώ όμως περίμενα να δυο γραμμές python σε κάποιο αρχείο καθώς και φάκελο parent και κάποια txt με άδειες και διάφορα άλλα όπως έβλεπα κατά καιρούς, είδα απλά κάποια βήματα για να δράσεις και να καταφέρεις το ζητούμενο. Κάποιον οδηγό, να το πω έτσι. Κι αυτό με μπέρδεψε και γι αυτό ρώτησα.

1 «Μου αρέσει»

Το git :git: αυτό που κάνει είναι να παρακολουθεί το ιστορικό των αλλαγών σε ένα φάκελο με κείμενα. Και ο κώδικάς είναι απλό κείμενο :smiley: Οπότε θα βρεις στο Github και αποθετήρια με κείμενα που δεν είναι κώδικάς.

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

  • Μια άλλη δυνατότητα που παρέχει είναι η αυτόματη δημιουργία του πακέτου εγκατάστασης. Εδώ μέσα θα δεις σε πολλούς οδηγούς να σου λένε να πας εκεί και να κατεβάσεις κάποιο deb αρχείο.

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

Και κάτι που μένει να λεχθεί: Τα τελευταία χρόνια ανήκει στη Microsoft και υπάρχει μια τάση φυγής σε αντίστοιχες πλατφόρμες.

3 «Μου αρέσει»

Α μάλιστα, το αγόρασε κι αυτό. Κάθε ελεύθερη, ανθρώπινη, δημιουργική δραστηριότητα, να την κάνουμε χρήμα για τους μεγάλους. Τι πάω μακριά; Μία παραλία είχαμε και κάποτε άφηναν κι ένα μέρος να βάλεις την ψάθα σου και να κάνεις ότι γουστάρεις. Φέτος το κακό παράγινε. ξαπλώστρες παντού μέχρι και τη θάλασσα. Νόμιμες βέβαια αφού δίνουν λεφτά στο Δήμο. Κάποτε και τα παγκάκια στις πλατείες θα είναι ιδιωτικά.
Άει στα κομμάτια πια!
Ο προβατοποιημένος κόσμος δεν χαμπαριάζει τίποτα. Πληρώστε ρε.

1 «Μου αρέσει»