2010-11-30 14 views
12

Ich habe ein Problem mit git über FTP.Git schlägt auf ftp-server zu schieben

Was ich jetzt habe:

  • FTP Server, bereit für die aktiven und passiven FTP;
  • Bare GIT-Repository, ein

Commit Das Repository wurde lokal erzeugt und dann an den Server gesendet. Ich musste git update-server-info verwenden, damit es funktioniert. Jetzt kann ich in mein neues Repository klonen und Pulls ausführen, aber ich kann nicht drücken. Jedesmal, wenn ich, git sagt:

error: Cannot access URL ftp://f***@w*****/repo/, return code 3 fatal: git-http-push failed

Kann jemand mir bitte helfen?

Greets Florian

+0

Ich kann nicht helfen, aber beachten Sie, dass HTTP-Push auf einen FTP-Server sieht aus wie eine peinliche Mischung aus Protokoll. – user502515

+0

Woher hast du deine git binaries? Ich denke, es muss mit curl-Unterstützung kompilieren, um ftp funktioniert zu bekommen. –

+0

@ user502515, ist es normal. git benutze das gleiche Backend für (dumm) http und ftp. –

Antwort

13

Hinweis: Wenn Ihr Ziel (deploy) Dateien zu kopieren, die dann in Ihrem lokalen Repo auf einen FTP-Server geändert haben:

könnte für diese Aufgabe besser geeignet sein.

Soweit ich weiß (wie confirmed in this thread), gibt es noch keine Unterstützung für git push to ftp.

+0

hm, nein, ich plante, den FTP-Server als "zentrale" Repository zu verwenden. Soweit ich weiß, ftp wurde vor ein paar Monaten zu Git hinzugefügt (siehe http://www.kernel.org/pub/software/scm/git/docs/git-push.html#URLS). Ich versuchte MYSYSGIT und das Standardpaket ubuntu 10.04 (1.7.0.4) für meine Tests – Tornado

+0

mindestens, ich dachte, es wurde hinzugefügt ... – Tornado

+0

@Tornado: Ich habe gelesen, dass Git Push-Man-Seite, aber ich habe nicht gefunden alle anderen Hinweise, dass ftp für push unterstützt wird (fetch yes, clone yes, aber push?) – VonC

4

@VonC: Scheint du hast Recht, ich redete so einige GIT-Jungs im IRC und sie sagten mir das Gleiche. FTP Pull funktioniert, FTP Push nicht. Wie dem auch sei, Ihr Bestätigungs-Thread ist eine mögliche Lösung für mein Problem, da ich mit webdrive/netdrive (und curlftpfs unter linux) feststellen kann, dass das Remote-Repository ein lokaler Ordner ist. Dies ist die einzige Lösung, die ich im Moment sehe.

Vielen Dank!

+0

interessant: Sie könnten diese Antwort später erweitern, um einige Implementierungs- und Einstellungsdetails einzubeziehen, um diese Remote-Repo-Installation zu erreichen. – VonC

+2

Okay, hier ein paar Details: Ich habe es nur unter Windows probiert, wenn linux wirklich auf meinem eee-pc saugt (Hauptsache viel Akkulaufzeit ist verloren). Aber egal, bei Windows ist es unkompliziert: Ich habe Netdrive benutzt, weil eine frei nutzbare Lizenz verfügbar ist. Mit netdrive habe ich mich mit meinem FTP-Server verbunden (auf einen Laufwerksbuchstaben gesetzt) ​​und dann dieses "lokale" Laufwerk als Remote-Repository benutzt (mit git clone x: /repo.git in meinem Arbeitsverzeichnis). Das ist es. Ich nehme an, dass es auch funktioniert, ein FTP-Verzeichnis mit curlftpfs unter Linux zu mounten. – Tornado

Verwandte Themen