Git (λογισμικό)

Σχεδίαση

Η σχεδίαση του Git εμπνεύστηκε από τα BitKeeper και Monotone. Το Git σχεδιάστηκε αρχικά ως μια μηχανή συστήματος ελέγχου σε έκδοση χαμηλού επιπέδου πάνω στην οποία άλλοι μπορούν να γράψουν προγράμματα προσκηνίου, όπως Cogito ή StGIT. Το έργο του πυρήνα του Git έχει γίνει από τότε μια πλήρης έκδοση συστήματος ελέγχου άμεσα χρησιμοποιήσιμη. Αν και επηρεάστηκε έντονα από το BitKeeper, ο Τόρβαλντς προσπάθησε εκούσια να αποφύγει συμβατικές προσεγγίσεις, που οδηγούν σε έναν μοναδικό σχεδιασμό.

Υλοποιήσεις

Το αναπτύχθηκε κυρίως σε Linux, αν και υποστηρίζει τα περισσότερα κύρια λειτουργικά συστήματα συμπεριλαμβανομένων των BSD, Solaris, OS X και Microsoft Windows.
Η υλοποίηση JGit του Git είναι μια καθαρή βιβλιοθήκη λογισμικού Java, που σχεδιάστηκε για να ενσωματωθεί σε οποιαδήποτε εφαρμογή  Java.  Το JGit χρησιμοποιείται στο εργαλείο επιθεώρησης κώδικα Gerrit και στο EGit, έναν πελάτη Git για το IDE Eclipse.
Η υλοποίηση Dulwich του Git είναι ένα καθαρό συστατικό λογισμικού Python για Python 2.
Η υλοποίηση libgit2 του Git είναι μια βιβλιοθήκη λογισμικού ANSI C χωρίς άλλες εξαρτήσεις, που μπορεί να δομηθεί σε πολλά λειτουργικά συμπεριλαμβανομένων των Microsoft Windows, Linux, Mac OS X και BSD. Έχει συνδέσμους για πολλές προγραμματιστικές γλώσσες, συμπεριλαμβανόμενων των Ruby, Python και Haskell.
το JS-Git είναι μια υλοποίηση JavaScript ενός υποσυνόλου του Git.

Διακομιστής Git

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

Απομακρυσμένη αποθήκευση αρχείου και πρόσβαση κελύφους

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

Ο δαίμονας Git, instaweb

Ο δαίμονας Git επιτρέπει στους χρήστες να μοιράζονται το δικό τους αποθετήριο με τους συνεργάτες τους γρήγορα. Το Git instaweb επιτρέπει στους χρήστες να παρέχουν προβολή ιστού στο αποθετήριο. Από τον Απρίλιο του 2014 το instaweb (στιγμιαίος ιστός) δεν δουλεύει στα Windows. Μπορείτε να δείτε αμφότερα στη γραμμή "hg serve" του Mercurial.

Gitolite

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

Gerrit

Το Gerrit παρέχει δύο από τρεις λειτουργίες: έλεγχο πρόσβασης και διαχείριση αποθετηρίων. Χρησιμοποιεί το jGit. Για να προβάλετε τα αποθετήρια συνδυάζεται π.χ. με τα Gitiles ή GitBlit.

Gitblit

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

Gitiles

Το Gitiles είναι ένας απλός περιηγητής αποθετηρίου, που χρησιμοποιείται συνήθως μαζί με το gerrit.

Εξυπηρετητής Bonobo Git

Ο εξυπηρετητής Bonobo Git είναι ένας απλός εξυπηρετητής git για Windows που υλοποιήθηκε ως μια πύλη ASP.NET. Βασίζεται στους μηχανισμούς πιστοποίησης που παρέχονται από τις υπηρεσίες πληροφοριών διαδικτύου των Windows, συνεπώς δεν υποστηρίζει πρόσβαση SSH, αλλά μπορεί να ενσωματωθεί εύκολα με τον ενεργό κατάλογο.

Εμπορικές λύσεις

Εμπορικές λύσεις είναι επίσης διαθέσιμες για εσωτερική εγκατάσταση, μεταξύ αυτών το λογισμικό GitHub (που χρησιμοποιεί εγγενές git, διαθέσιμο ως vm), Stash (χρησιμοποιώντας jGit), Team Foundation Server (χρησιμοποιώντας libgit2).

Αποδοχή

Το Ίδρυμα Eclipse ανέφερε στην ετήσια έρευνα του ότι από τον Μάιο του 2014, το Git είναι πλέον το πιο διαδεδομένο εργαλείο διαχείρισης πηγαίου κώδικα, με το 42,9% των επαγγελματιών προγραμματιστών λογισμικού να αναφέρουν ότι χρησιμοποιούν το Git ή το GitHub ως το κύριο σύστημα ελέγχου συγκρινόμενο με το 36% in 2013, 27,6% το 2012 και 12.8% το 2011. Open source directory Ohloh reports a similar uptake among open source projects.
Η ιστοσελίδα εργασίας UK IT itjobswatch.co.uk αναφέρει ότι από τον Ιούνιο του 2014, το 18,54% των μόνιμων νέων εργασιών ανάπτυξης λογισμικού στο Ενωμένο Βασίλειο εμφανίζουν το Git ως προαπαιτούμενο, μπροστά από το 16,54% για Subversion, 10,87% για Microsoft Team Foundation Server, 1.32% for Mercurial, and 0.91% for Visual SourceSafe.