2010-04-01 8 views
46

Gibt es Alternativen zu gitosis, die einfacher zu verwenden sind?Gitosis Alternative?

Ich führe derzeit Gitosis auf einem Ubuntu-Server für mein Labor. Wir fügen regelmäßig neue Benutzer und Repos hinzu. Ich finde die gitosis.conf Syntax nicht intuitiv, und wenn ich auch nur einen kleinen Fehler mache das ganze Gitosis-System fehlschlägt, siehe zum Beispiel this question on SO. Wenn Gitosis fehlschlägt es auch den Zugriff auf das Git-Repository, das gitosis.conf enthält ... go figure ... There muss ein besserer Weg sein.

Ich habe über private GitHub-Konten nachgedacht, aber gibt es noch etwas, das ich lokal hosten könnte?

Antwort

30

ich am Ende zahlen nur für GitHub. Hier ist, was ich versucht:

  • Gitolite: Die Installation von tatsächlich heikel ist. Ich stieß auf viele Probleme mit SSH-Schlüsseln, die durch die Tatsache verstärkt wurden, dass ich zuerst die Installation von einer Windows-Workstation aus versuchte. Außerdem benötigt Gitolite einen Server mit Git 1.6, aber Ubuntu stable auf meinem Server läuft nur mit Git 1.5. Ich hätte neueren Git aus der Quelle kompilieren können, aber zu diesem Zeitpunkt hatte ich bereits 3 Stunden in meine Gitolit-Installation abgesunken.

  • Gitorious: Gitorious erfordert Ruby, Mysql und eine Unzahl von Edelsteinen und Paketen. Wie @calmh sagte,

    Gitorious ist wunderbar, wenn es läuft. Es ist ein Albtraum dorthin zu gelangen ...

An diesem Punkt, den ich mit GitHub beschlossen zu gehen:

  • GitHub: 50 $/Monat 50 private Repositories bekommt, 25 Mitarbeiter und 6 GB Raum. Einzelne Benutzer können einfach zusätzliche SSH-Schlüssel selbst hinzufügen und es ist trivial für meinen Kollegen und mich, neue Repos für unsere Mitarbeiter zu erstellen. Normalerweise mag ich die kostenlose DIY-Lösung, aber in diesem Fall lohnt sich das Geld wirklich.

letzter Gedanke: Es wäre toll, wenn TurnkeyLinux könnte einen Tag ihre verbessern revision control appliance zu include gitorious by default.

+2

Ich habe ein PHP-basiertes Web-Interface für Gitosis erstellt: https://github.com/cmuench/n98-gitosis-admin – cmuench

+0

Welche Ubuntu-Version war das? –

+0

Es war Turnkey Linux von vor langer Zeit. Ich kann mich nicht mehr erinnern. Diese Frage ist jetzt drei Jahre alt. – AndyL

42

Gitolite könnte eine Lösung sein.

+0

Haben Sie schon Gitolit verwendet? Können Sie Details angeben? Basierend auf der Readme klingt es nett. – AndyL

+1

Vielleicht am aufregendsten, von http://github.com/sitaramc/gitolite/blob/pu/doc/3-faq-tips-etc.mkd#diff: "Fehler beim Überprüfen der Konfigurationsdatei Gitosis tut keine. Ich habe gerade herausgefunden, dass gitosis es ignoriert, wenn du Mitglieder falsch buchstabierst, und dich wundern lässt, warum der Zugriff verweigert wurde. Gitolite "kompiliert" zuerst die Konfigurationsdatei und Tippfehler werden abgefangen, damit du sofort weißt. " – AndyL

+1

gitolite ist genial – wadesworld

2

Ich habe eigentlich nur ein paar einfache Python-Skripte geschrieben, um die Erstellung von Benutzern und Repos zu erleichtern, nur aus dem Grund, den du erwähnt hast. Ich vermute, ich könnte meinen Chef dazu bringen, dass ich sie öffnen lasse - im Grunde lesen und schreiben sie die von Gitosis verwendete Konfigurationsdatei mit Hilfe einer Python-Bibliothek namens configobj. Ich habe sie so eingerichtet, dass sie entweder als Befehlszeilenskript oder als CGI-Skript mit einer kleinen Weboberfläche ausgeführt werden können.

+1

Das klingt großartig! Berücksichtigen Sie bitte Open Source. – AndyL

7

Was ist mit dem System, das http://repo.or.cz antreibt: Girocco

... oder gitorious

+0

Danke. Diese beiden sehen interessant aus. Hast du beides benutzt? Ich mache mir Sorgen um gitorious. Es sieht so aus als ob du ein komplettes Ruby on Rails Setup + viele Edelsteine ​​+ Custom Apache brauchst. Der Installationsvorgang ist sehr, sehr lang, siehe http://gitorious.org/gitorious/mainline/blobs/master/README – AndyL

+6

Gitorious ist wunderbar, wenn es läuft. Es ist ein Albtraum, dorthin zu gelangen. –

8

Ich habe Github verwendet, aber es wird zu teuer, während die Anzahl Ihrer Projekte wächst. Und die Art, wie öffentliche Schlüssel verwaltet werden, ist nicht sehr befriedigend. Zum Beispiel können Sie nicht zwei identische Schlüssel für zwei verschiedene Repos hinzufügen, die Sie hinzufügen müssen, ist als globaler Schlüssel (korrigieren Sie mich, wenn ich falsch liege).

Ich fand, dass ein Slicehost Slice (oder was auch immer Sie verwenden) mit Gitolit ist viel billiger. Gitolite Installation und Verwaltung ist sehr einfach und unkompliziert. Und wenn Sie eine Webschnittstelle benötigen, gibt es Optionen zur Auswahl, aber ich persönlich brauche sie nicht, und habe diese Funktion nie auf github verwendet. Die Zugangskontrolle ist sehr leistungsstark und einfach in der gleichen Zeit. Und es gibt Möglichkeiten, es zu installieren, keinen Root-Zugriff auf Ihren Host zu haben.

Und Sie können Ihren Server auch für das Hosting verwenden, ohne eine weitere monatliche Gebühr zu bezahlen. Ich habe ein Tutorial geschrieben, wie man Gitolit auf Ubuntu aufsetzt, was sehr einfach ist (im Gegensatz zu giroco).

Sie können read it here

8

Ziemlich alten Thread, aber nur der Vollständigkeit halber, es lohnt auf BitBucket suchen - als ein Benutzer erwähnt, kann GitHub für viele Privat repos teuer, aber BB bietet unbegrenzte Privat repos kostenlos - Bis jetzt hatte ich keine Probleme mit git access.

HTH

+1

Abstimmung für diesen. Bitbucket eignet sich hervorragend für private Repos, bei denen Sie nicht alle sozialen Features von github benötigen. – realcnbs

1

Wir haben eine Reihe von Lösungen, und keiner von ihnen sehen gut aus administrativer Sicht arbeiten. Wir hatten Gerrit ursprünglich übergangen, weil wir dachten, dass es nur für Code-Reviews war, aber ich denke, dass es einen zweiten Blick verdient. Es führt auch Autorisierung und Authentifizierung sowie eine Workflow-Komponente durch, sodass Sie Builds nach Commits oder positiven Reviews auslösen können.

1
  1. gitolite als nette Features wie Zweig Zugriffskontrolle und hat eine gute Dokumentation. Einfach einzurichten. Kleinste Abhängigkeiten.

  2. Für den readonly Web-Zugang soll Gitweb zusammen mit Gitolit verwendet werden.

  3. Gitorious ist zu schwierig einzurichten und hat zu viele Abhängigkeiten.

  4. Gitorious Passagier benötigt, wenn Sie Apache verwenden, wird es zu komplex Setup, wenn Sie andere Rails-Anwendung haben eine andere Version von Ruby verwenden.

Eine Übersicht über gitolite Funktionen beobachten Gitolite by Sitaram

0

scm-manager nicht als voll funktions als gitosis ist, aber es ist einfach git, Mercurial und SVN-Repositories mit Web-Admin, checkins und diff-Tracking-Host .

+0

Ich habe versucht, SCM-Manager und es ist wirklich ein gutes Gleichgewicht zwischen der Anzahl der Funktionen und der Anzahl der VC-Systeme, die es unterstützt. Das einzige Problem war, dass es auf Java basierte: Es war zu blutig, um auf einem Low-End-VPS laufen zu können, der nur als Quellcode-Hosting-Server verwendet wurde. –

3

Verwenden Sie GitLab, können Sie den Zugriff über die Web-UI konfigurieren. (Offenlegung: Ich bin ein Mitbegründer von GitLab.com). Es ist das am häufigsten installierte Git-Management-System und enthält Zusammenführungsanforderungen, Zeilenkommentare, ein Wiki und einen Issue-Tracker.