2015-05-18 3 views
6

Ich versuche ein öffentlich zugängliches git-Repository einzurichten, das über HTTP auf einem Server geklont werden kann, den ich physisch besitze und auf den ich root zugreifen kann scheint, als würde ich etwas vermissen. Ich bin neu in git, so kann ich nicht sehr gut behandeln, aber hier ist, was ich weiß:`git clone` über HTTP Failed mit" repository not found "

  1. Ich bin in der Lage, die git-Repository mit git clone ssh://[email protected]/awhsome-framework just fine
  2. git clone http://repo.alaskawh.com/framework nicht mit fatal: repository 'http://repo.alaskawh.com/framework/' not found
  3. zu klonen http://repo.alaskawh.com/framework/ listet die Datei im Git Repository nur gut, wenn ich es in einem Web-Browser besuchen

/var/lib/gitolite/repositories/awhsome-framework.git ein symbolischer Link zu /var/www/repo.alaskawh.com/framework/ ist, habe ich die Datei hooks/post-update erstellt, die die enthält Zeile exec git update-server-info, und ich habe sichergestellt, dass Benutzerberechtigungen korrekt sind.

Weiß jemand, was ich falsch mache?

+0

Haben Sie einen Git Smart HTTP-Server nach [diesen Dokumenten] implementiert (http://git-scm.com/book/en/v2/Git-on-the-Server-Smart-HTTP)? – javabrett

+1

@javabrett habe ich nicht. Ich arbeite gerade daran, es zu implementieren, und es tut etwas. –

Antwort

3

Sie sollten eine Git Smart HTTP server backend einrichten. Zusätzliche Dokumentation ist verfügbar here. Dies wird eine einfache und effiziente Git-Hosting-Lösung über HTTP bereitstellen.

+1

Das Problem ist definitiv, dass ich ein Git Smart HTTP Server-Backend vermisse; Ich war jedoch nicht in der Lage, es richtig funktionieren zu lassen. Außerdem fand ich [diese Anweisungen] (http://git-scm.com/docs/git-http-backend) nützlicher. –

+0

Danke, ich wollte diesen Link in der ursprünglichen Antwort hinzufügen, aber aus irgendeinem Grund nicht beachtet. Bearbeitet/hinzugefügt. – javabrett

+1

Ich habe es herausgefunden. Die Sache, die mir fehlte, war, dass der Wert von 'GIT_PROJECT_ROOT' das Verzeichnis über dem Verzeichnis sein muss, das die Git-Dateien enthält. Beispiel: 'GIT_PROJECT_ROOT' ist auf'/var/www/repo.alaskawh.com/framework' gesetzt, das eigentliche git-Verzeichnis befindet sich unter '/var/www/repo.alaskawh.com/framework/awhsome-framework.git ', und dann kann ich es mit' git clone http: // repo.alaskawh.com/framework/awhsome-framework 'klonen. –