Einrichten eines Git-Servers

Einrichten eines Git-Servers

Ich habe vor Kurzem einen Ubuntu-Server auf Amazon EC2 eingerichtet. Ich möchte ihn als meinen Git-Server verwenden, damit ich meine Repos dort speichern kann.

Wo finde ich also detaillierte Anweisungen zum Einrichten von Git auf einem Ubuntu-Server? All diese SSH-Schlüssel und solche Sachen, mehrere Benutzer usw.

Antwort1

Du kannst den ... benutzenTutorial zur Installation eines Git-Servers, wie von aking1012 vorgeschlagenSie oder Sie könnten einfach einen SSH-Server auf Ihrer EC2-Instanz installieren (wahrscheinlich wäre es ratsam, ihn zu sichern und den Standardport zu ändern).

Git kann serverlos sein. Sie initialisieren Ihr Repository und greifen dann remote über SSH darauf zu. Anweisungen wie diese sollten auf dem Ubuntu-Server ausreichen:

GIT_DIR=project.git git init  
cd project.git  
git --bare update-server-info  
cp hooks/post-update.sample hooks/post-update

Installieren Sie abschließend SSH auf Ihrem Server:

sudo apt-get install ssh-server

Jetzt sollten Sie SSH konfigurieren, um es zu sichern.

Es ist Zeit, Ihr Projekt online zu stellen (die Daten, die Sie bereits auf Ihrer Entwicklungsmaschine haben):

git push ssh://<username>@<remote-git-hostname>/path/to/project.git master

Und jetzt können Sie mit dem Klonen beginnen. Gehen Sie dazu auf Ihre Entwicklungsmaschine:

git clone ssh://<username>@<remote-git-hostname>/path/to/dir.git

Überprüfen Sie diesausgezeichnete Ressource zu Git.

Und um Ihre SSH-Schlüssel für eine sicherere Authentifizierung zu generieren, können Sie diesen Artikel lesen überSSH-Authentifizierung.

Antwort2

Für alle meine Git-Server-Setups verwende ichGitolitDies ermöglicht eine Sicherheitsgranularität des Zugriffs „pro Zweigstelle“. Die Einrichtung ist ziemlich unkompliziert, wenn Sie sie auf einem Remote-Server durchführen, ist es so einfach wie das Ausführen eines interaktiven Skripts. Zusätzlich zu dieser „einfachen Einrichtung“ verfügt es auch über ein Paket in Natty und Maverick

sudo apt-get install gitolite

Dies bietet kein Web-Frontend wie Github oder Gitweb – aber Sie können diese problemlos auf etwas wie Gitolite konfigurieren und installieren.

Antwort3

Ich magGitolitDas Pro Git Buch hat eineAbschnittdarauf, aber ich empfehle, das ganze Buch zu lesen.

Was Ihre Anforderung für mehrere Benutzer betrifft:

Mit Gitolite können Sie Berechtigungen nicht nur nach Repository (wie bei Gitosis), sondern auch nach Branch- oder Tag-Namen innerhalb jedes Repositorys festlegen. Das heißt, Sie können festlegen, dass bestimmte Personen (oder Personengruppen) nur bestimmte „Refs“ (Branches oder Tags) pushen können, andere jedoch nicht.

Antwort4

Befolgen Sie unbedingt die offizielle Dokumentation:https://help.ubuntu.com/community/Git(AbschnittEinrichten von Git und Projektmanagement)

verwandte Informationen