Szukasz narzędzia do automatycznej dwukierunkowej synchronizacji SFTP z folderem lokalnym

9

Używam OS X do programowania i chcę wypychać zmiany do serwera deweloperskiego na każdym ⌘ + S.
Kiedy sprawdzam inny oddział, chcę, aby folder lokalny odpowiednio się zaktualizował.

Pomyślałem, że potrzebuję automatycznego, dwukierunkowego rozwiązania synchronizacji .

Moim edytorem jest Sublime Text (co jest niesamowite, powinieneś to sprawdzić).
Swoją misję rozpocząłem od wtyczki Sublime Text SFTP od Willa Bonda, ale okazało się, że jest niestabilna i wolna.

Następnie zaatakowałem problem za pomocą Panic Transmit .
Jest oszałamiająco piękny. Jednak to też mi nie pomogło.

Transmit oferuje dwie opcje:

  • dwukierunkowa synchronizacja między folderem lokalnym i zdalnym;
  • podłącz SFTP do systemu plików.

Niestety, dwukierunkowa synchronizacja jest ręczna i musi zostać wywołana przez naciśnięcie przycisku.
(Prawdopodobnie mógłbym to obejść, pisząc jakiś sprytny AppleScript - ale nie wiem.)

Montaż SFTP jest świetny - niestety ma poważne wady: wyszukiwanie plików jest przewidywalnie wolne i wydaje się, że nie można powiedzieć Transmitowi, że pliki zmieniły się na serwerze . Musisz odmontować i zamontować ponownie, aby zobaczyć zmiany zdalne. To uniemożliwia współpracę z oddziałami.

Jestem teraz bardzo zdezorientowany i nie mam ochoty marnować kilku godzin na złe rozwiązanie. Jestem otwarty na sugestie dotyczące narzędzia usprawniającego mój przepływ pracy.

Oto, co do tej pory znalazłem. Nie jestem pewien, czy którykolwiek z nich rzeczywiście może obserwować zdalny folder pod kątem zmian.

Zauważ, że szukam rozwiązania, które działa od razu po wyjęciu z pudełka . Nie chcę narzędzia, które nie poradzi sobie z nowymi / zmienionymi / usuniętymi plikami lub folderami bez konieczności manipulowania kodem źródłowym.

Dan
źródło
Dlaczego nie skorzystać z dobrego IDE, które może ci w tym pomóc?
Thorbjørn Ravn Andersen

Odpowiedzi:

5

Stare pytanie, ale oto moja odpowiedź:

Używam narzędzia Unix o nazwie Unison . Jest to narzędzie wiersza polecenia, które umożliwia synchronizację dwukierunkową.

Zaletą jest to, że jest wysoce konfigurowalny: ignoruj ​​pewne nazwy plików, katalogów, synchronizuj wiele folderów, po której stronie wygrywa konflikt, wiele innych rzeczy.

Złe jest to, że nie musisz bać się wiersza poleceń, a zarówno serwer, jak i klient muszą mieć zainstalowany Unison; obie instalacje muszą być tej samej wersji i muszą być zbudowane z tej samej wersji OCAML.

Ale przez ostatni rok używałem go wiele razy dziennie każdego dnia pracy i było niesamowite - jest naprawdę szybkie, bardzo łatwe do odpalenia z linii poleceń.

RyanWilcox
źródło
1

Czy zastanawiałeś się nad użyciem czegoś takiego jak Git? Hostowanie plików na GitHub lub konfigurowanie własnego serwera git.

To powinno pomóc: /programming/455698/best-visual-client-for-git-on-mac-os-x

afragen
źródło
1
Używam Gita, jednak nie mam uruchomionego środowiska na swoim laptopie, więc aby przetestować każdą najmniejszą zmianę, muszę wykonać zatwierdzenie i wypchnąć. To sprawia, że ​​historia zatwierdzania nie ma znaczenia i jest nieco nudna, chociaż właśnie to właśnie robię teraz, dzięki ST2 i Github dla komputerów Mac, dzięki czemu doświadczenie jest nieco przyjemniejsze i mniej bolesne.
Dan
Na pewno przyjrzę się tym pytaniom, dziękuję tona.
Dan
0

Bardzo stare pytanie, ale może moja własna odpowiedź pomaga. Użyłem również SublimeText (myślę, że gdzieś go jeszcze mam), ponieważ podoba mi się sposób, w jaki otwiera tak szybko pliki - szczególnie na starszych komputerach Mac. Jednak przy poważniejszych pracach lepsze IDE zdecydowanie lepiej spełni twoje wymagania.

Ponieważ nie masz nic przeciwko zdobywaniu nowego / innego oprogramowania, wypróbuj Coda Paniki. Podobał Ci się już Transmit, który jest również produktem firmy Panic. Coda znajduje się pomiędzy SublimeText a super-zaawansowanymi IDE, takimi jak, powiedzmy, Eclipse, i może robić, co chcesz - synchronizować foldery między komputerem lokalnym a serwerem zdalnym, publikować i synchronizować na żądanie, a dodatkowo zachować dane lokalne są również zsynchronizowane z GitHub, Google Code lub innym popularnym systemem kontroli wersji opartym na Git lub SVN.

W przeszłości Coda trochę traciła wydajność (mianowicie renderowanie kodu w kolorze podczas szybkiego przewijania), ale obecne wersje zostały całkowicie odnowione i są prawie tak szybkie jak SublimeText. Jest również oparty na wtyczkach - wtyczka sprawdzania poprawności kodu PHP / JavaScript / HTML jest koniecznością, ponieważ wewnętrzne funkcje sprawdzania poprawności kodu Cody nie są w porównaniu z gwiazdami. W dzisiejszych czasach możesz używać ustawień serwera Transmit na Codzie i odwrotnie, a także na dowolnym urządzeniu iOS, które posiadasz, za pośrednictwem ich sprytnych aplikacji, które synchronizują ustawienia między sobą.

To prawie brzmi jak propaganda dla Paniki ... Nie wspomniałbym o Codzie, gdybyś nie wspomniał o Transmitcie!

Gwyneth Llewelyn
źródło