Suchen Sie nach einem Tool, mit dem SFTP automatisch in beide Richtungen mit dem lokalen Ordner synchronisiert werden kann

9

Ich verwende OS X für die Entwicklung und möchte Änderungen auf jedem ⌘ + S auf den Dev-Server übertragen.
Wenn ich einen anderen Zweig auschecke, soll der lokale Ordner entsprechend aktualisiert werden.

Also dachte ich mir, ich brauche eine automatische Zwei-Wege-Synchronisierungslösung .

Mein bevorzugter Editor ist Sublime Text (was großartig ist, Sie sollten es sich unbedingt ansehen).
Ich begann meine Suche mit dem Sublime Text SFTP-Plugin von Will Bond , fand es aber instabil und langsam.

Dann habe ich das Problem mit Panic Transmit angegriffen .
Es ist atemberaubend schön. Es hat mir aber auch nicht geholfen.

Senden bietet zwei Möglichkeiten:

  • bidirektionale Synchronisierung zwischen lokalem und entferntem Ordner;
  • Hängen Sie SFTP in das Dateisystem ein.

Leider erfolgt die bidirektionale Synchronisierung manuell und muss per Knopfdruck aufgerufen werden.
(Ich könnte das wahrscheinlich umgehen, indem ich ein cleveres AppleScript schreibe - aber ich weiß es nicht.)

Die SFTP-Bereitstellung ist großartig - leider hat sie große Nachteile: Die Dateisuche ist vorhersehbar langsam und es scheint keine Möglichkeit zu geben, Transmit mitzuteilen, dass sich Dateien auf dem Server geändert haben . Sie müssen die Bereitstellung aufheben und erneut bereitstellen, um die Remote-Änderungen zu sehen. Dies macht es unmöglich, mit Zweigen zu arbeiten.

Ich bin jetzt wirklich verwirrt und habe keine Lust, ein paar Stunden mit einer falschen Lösung zu verschwenden. Ich bin offen für Vorschläge für ein Tool zur Verbesserung meines Workflows.

Folgendes habe ich bisher gefunden. Ich bin nicht sicher, ob einer von diesen tatsächlich den Remote-Ordner auf Änderungen überwachen kann.

Beachten Sie, dass ich nach einer Lösung suche, die sofort funktioniert . Ich möchte kein Tool, das neue / geänderte / gelöschte Dateien oder Ordner nicht verarbeiten kann, ohne mit dem Quellcode herumzuspielen.

Dan
quelle
Warum nicht einfach eine gute IDE verwenden, die Ihnen dabei helfen kann?
Thorbjørn Ravn Andersen

Antworten:

5

Alte Frage, aber hier ist meine Antwort:

Ich benutze ein Unix-Tool namens Unison . Dies ist ein Befehlszeilenprogramm, das eine bidirektionale Synchronisierung ermöglicht.

Das Gute ist, dass es hochgradig konfigurierbar ist: Ignorieren Sie bestimmte Dateinamen, Verzeichnisse, synchronisieren Sie mehrere Ordner, welche Seite in einem Konflikt gewinnt, viele andere Dinge.

Das Schlimme ist, dass Sie keine Angst vor der Befehlszeile haben müssen und sowohl auf dem Server als auch auf dem Client Unison installiert sein muss. Beide Installationen müssen dieselbe Version haben und mit derselben Version von OCAML erstellt werden.

Aber ich habe es im letzten Jahr mehrmals pro Stunde an jedem Arbeitstag benutzt und es war großartig - es ist sehr schnell und sehr einfach, von der Kommandozeile aus zu feuern.

RyanWilcox
quelle
1

Haben Sie darüber nachgedacht, etwas wie Git zu verwenden? Hosten Sie die Dateien auf GitHub oder richten Sie Ihren eigenen Git-Server ein.

Dies sollte helfen: /programming/455698/best-visual-client-for-git-on-mac-os-x

afragen
quelle
1
Ich verwende Git, habe jedoch keine laufende Umgebung auf meinem Laptop. Um jede kleinste Änderung zu testen, muss ich ein Commit und einen Push durchführen. Dies macht das Festschreiben des Verlaufs bedeutungslos und ist etwas langweilig, obwohl ich genau das jetzt mache. ST2 & Github für Mac machen die Erfahrung etwas lustiger und weniger schmerzhaft.
Dan
Ich werde mir diese Fragen auf jeden Fall ansehen, vielen Dank.
Dan
0

Eine sehr alte Frage, aber vielleicht hilft meine eigene Antwort. Ich habe auch SublimeText verwendet (ich glaube, ich habe es noch irgendwo), weil mir die Art und Weise gefällt, wie Dateien so schnell geöffnet werden - besonders auf älteren Macs. Für ernstere Arbeiten würde eine bessere IDE jedoch definitiv besser zu Ihren Anforderungen passen.

Probieren Sie Panic's Coda aus, da Sie neue / andere Software erwerben können. Transmit, ein Produkt von Panic, hat Ihnen bereits gefallen. Coda befindet sich zwischen SublimeText und hochentwickelten IDEs wie beispielsweise Eclipse und kann so ziemlich alles tun, was Sie möchten - Ordner zwischen Ihrem lokalen Computer und dem Remote-Server synchronisieren, bei Bedarf veröffentlichen und synchronisieren und zusätzlich Ihre Lokale Daten auch synchron mit GitHub, Google Code oder einem anderen gängigen Versionssystem, das entweder auf Git oder SVN basiert.

Coda hat in der Vergangenheit ein wenig unter der Leistung gelitten (nämlich beim Rendern von Code in Farbe beim schnellen Scrollen), aber die aktuellen Versionen wurden komplett überarbeitet und sind fast so schnell wie SublimeText. Es ist auch Plugin-basiert - das PHP / JavaScript / HTML-Validierungs-Plugin ist ein Muss, da die internen Code-Validierungsfunktionen von Coda im Vergleich nicht herausragend sind. Und heutzutage können Sie Ihre Transmit-Servereinstellungen auf Coda und umgekehrt sowie auf jedem iOS-Gerät, das Sie möglicherweise besitzen, über deren clevere Apps verwenden, die die Einstellungen untereinander synchronisieren.

Das klingt fast wie Propaganda für Panik ... Ich hätte Coda nicht erwähnt, wenn Sie Transmit nicht erwähnt hätten!

Gwyneth Llewelyn
quelle