
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)