Halten Sie den FTP-Ordner mit dem Windows-Ordner synchronisiert

8

Ich versuche, mein Continuous Integration-System in der Entwicklungsumgebung von Anfang bis Ende zum Laufen zu bringen.

Leider ist der letzte Schritt nach der Veröffentlichung das Kopieren des Ordners auf einen externen Server, auf den ich nur über FTP zugreifen kann.

Ich möchte, dass ein Dienst ausgeführt wird, der einen lokalen Ordner überwacht. Wenn sich dieser ändert, wird der FTP-Server mit diesen Änderungen aktualisiert.

Ich kann in Windows anscheinend nichts finden, um dies zu erreichen.

CaffGeek
quelle
Siehe auch "SFTP als Ordner unter Vista" unter superuser.com/questions/55860/sftp-as-a-folder-on-vista
Arjan

Antworten:

5

Probieren Sie die Freeware-Version von SyncBack aus . Es wird keine Echtzeitordnerüberwachung durchgeführt, aber Sie können die Synchronisierung in bestimmten Intervallen planen. Stellen Sie es auf einen niedrigen Wert wie 1 Minute ein.

John T.
quelle
Ich würde Echtzeitüberwachung bevorzugen, wenn ich sie finden kann. Ich könnte es schreiben, ich nehme an, ich habe einfach bessere Dinge zu tun.
CaffGeek
1
Ich habe nach einem Projekt gesucht, um wieder in die Programmierung einzusteigen. Das klingt nach einer guten Passform. Ich habe über das Wochenende mit INotify und JNotify gespielt und es ist ziemlich trivial. Sie werden in den nächsten Wochen eine Synchronisierungssoftware von mir sehen :)
John T
2

Kostenlose und Open Source Lösung basierend auf Git:

Verwenden Sie git-ftp für die Synchronisation. Nach der Installation und Einrichtung eines lokalen Git-Repositorys können Sie Folgendes tun:

  • git ftp init -u <Benutzer> -P f tp: //host.example.com/public_html #für das erste Drücken
  • git ftp push --user <Benutzer> --passwd <Kennwort> f tp: //host.example.com/public_html

Jetzt müssen Sie nur noch nach Änderungen am Dateisystem suchen, diese Ihrem lokalen Git-Repository hinzufügen und Ihr Repository mit dem obigen Befehl verschieben.

Vorteile:

  • git-ftp funktioniert unter Windows und Linux (getestet mit mysys git unter Windows)
  • lässt sich gut in Ihr Entwicklungssetup integrieren, wenn Sie bereits git verwenden
  • sehr einfach einzurichten und zu verwenden (wenn Sie mit Git vertraut sind)
  • inkrementelle Änderungen -> spart viel Bandbreite

Nachteile:

  • Sie müssen eine Lösung finden, um nach Änderungen im Dateisystem zu suchen (sollte nicht zu schwierig sein, z. B. hat nodejs Lösungen dafür).

Hier ist ein Beispiel für eine Batch-Datei, die ich unter Windows verwende:

@echo off
git init .
git add . --all
git commit -am "auto commit"
set /p pwd= Please enter ftp password: 
git ftp push --user myftpuser --passwd %pwd% ftp://myftphost.com/myfolder

Beachten Sie, dass dies ein interaktives Beispiel ist. Sie können es jedoch nicht interaktiv machen, indem Sie das Kennwort in der Batchdatei speichern.

dominik andreas
quelle