Usiłuję użyć Sublime Text 2 jako edytora, gdy SSH jest podłączony do mojego serwera roboczego i mam problem. Znalazłem ten http://urbangiraffe.com/2011/08/13/remote-editing-with-sublime-text-2/ (wśród wielu innych postów), który wygląda na to, że może pomóc, ale nie przestrzegam go dokładnie , w szczególności z wartościami, które powinienem wprowadzić dla zmiennej zdalnej w linii 5. Ustawiam „/ Users / path / to / local / copy” w moim lokalnym katalogu głównym, ale nie wiem, czy to prawda, czy jest więcej do zrobienia. jakieś pomysły? Jestem na OSX10.8
ssh
sublimetext2
thumbtackthief
źródło
źródło
osxfuse
isshfs
na moim komputerze Mac lokalnie montować zdalne katalogi, a następnie edytować je za pomocą ST2.Odpowiedzi:
Istnieją trzy sposoby:
Użyj wtyczki SFTP (reklama) http://wbond.net/sublime_packages/sftp - Osobiście polecam to, ponieważ po ustawieniu publicznych kluczy SSH z hasłem jest to bezpieczne, łatwe i warte każdego grosza http://opensourcehacker.com/2012/ 10/24 / ssh-key-and-password-login-basics-for-developers /
Zamontuj zdalny jako lokalny system plików za pomocą
osxfuse
isshfs
jak wspomniano w komentarzach. Może to być trochę trudne, w zależności od wersji OSX i twoich umiejętności obsługi systemów plików UNIX.Zhakuj coś w rodzaju rmate, który edytuje pliki przez zdalne tunelowanie przy użyciu jakiegoś lokalnego demona (bardzo trudne, uciążliwe, ale kompatybilne z sudo) http://blog.macromates.com/2011/mate-and-rmate/
Teoretycznie możesz także zainstalować X11 na zdalnym serwerze i uruchomić Sublime na VNC lub X11, ale nie ma sensu tego robić.
źródło
Możesz użyć rsub , który jest inspirowany TextMate
rmate
. Z opisu:Oto dobry samouczek na temat prawidłowej konfiguracji.
źródło
Korzystam z systemu Windows i użyłem 4 metod: SFTP , WinSCP , Unison i Sublime Text w systemie Linux z X11 przesyłaniem dalej przez SSH do Windows (tak, możesz to zrobić bez niechlujnych konfiguracji i korzystania z bezpłatnego narzędzia).
Czwarty sposób jest najlepszy, jeśli możesz zainstalować oprogramowanie na komputerze z systemem Linux.
Czwarty sposób:
MobaXterm
subl
Uwaga: Podczas wywoływania subl, jeśli narzeka na określoną bibliotekę - upewnij się, że je zainstalowałeś, aby pomyślnie wywołać sublimetr z mobaxterm.
Jeśli nie możesz zainstalować oprogramowania na swoim Linux-ie, najlepszym rozwiązaniem jest Unison. Czemu?
SFTP
Konfiguracja: zainstaluj pakiet SFTP Sublime Text. Ten pakiet wymaga licencji.
W sftp-config zwykle ustawiam:
To, oprócz terminalu SSH do maszyny, zapewnia mi dość płynne zdalne edytowanie.
WinSCP
Odtąd WinSCP będzie synchronizował twoje zmiany.
Pracuj w folderze lokalnym za pomocą SublimeText. Upewnij się tylko, że Sublime Text jest ustawiony na odgadywanie zakończeń linii z edytowanego pliku.
Unisono
Odkryłem, że jeśli drzewo źródłowe jest ogromne (około kilkuset MB z głęboką hierarchią), wówczas opisana powyżej metoda WinSCP może być nieco wolniejsza. Możesz uzyskać znacznie lepszą wydajność za pomocą Unison . Minusem jest to, że Unison nie jest automatyczny (musisz go uruchomić za pomocą naciśnięcia klawisza) i wymaga, aby komponent serwera działał na twoim komputerze z systemem Linux. Zaletą jest to, że transfery są niezwykle szybkie, bardzo niezawodne, a ignorowanie plików, folderów i rozszerzeń jest niezwykle łatwe w konfiguracji.
źródło
SFTP setup
link. Nie wiedziałem, czy SFTP to oprogramowanie Windows, czy pakiet Sublime.W odpowiedzi na odpowiedź @ ubik, oto trzy proste (jednorazowe) kroki, aby polecenie „subl” działało na zdalnym serwerze:
rsub
pakiet w Sublime Text za pomocą Sublime Package Manager[ Lokalny ] Wykonaj następujące polecenie Bash (spowoduje to utworzenie tunelu SSH , który jest tajnym sosem rsub):
[ Serwer ] Wykonaj następujące polecenie Bash na zdalnym serwerze (spowoduje to zainstalowanie polecenia powłoki „subl”):
I voila! Teraz używasz Sublime Text przez SSH.
Możesz otworzyć przykładowy plik w Sublime Text z serwera za pomocą czegoś takiego
subl ~/test.txt
źródło
/usr/local/bin/subl: connect: Connection refused /usr/local/bin/subl: line 200: /dev/tcp/localhost/52698: Connection refused Unable to connect to TextMate on localhost:52698
. Myśli?Korzystam z systemu MacOS, a najwygodniejszym sposobem dla mnie jest korzystanie z CyberDuck , która jest bezpłatna (dostępna również dla systemu Windows). Możesz połączyć się ze zdalnym systemem plików SSH i edytować plik za pomocą lokalnego edytora. CyberDuck pobiera plik do tymczasowego miejsca w lokalnym systemie operacyjnym i otwiera go za pomocą edytora. Po zapisaniu pliku CyberDuck automatycznie prześle go do zdalnego systemu. Wydaje się przezroczysty, jakbyś edytował zdalny plik za pomocą lokalnego edytora. Twórcy oprogramowania Cyberduck stworzyli także MountainDuck do montowania zdalnych systemów plików.
źródło
Możesz spróbować czegoś, nad czym pracowałem, zwanego „ xeno ” ”. Umożliwi to otwieranie plików / folderów w Sublime Text (lub dowolnym lokalnym edytorze) za pośrednictwem połączenia SSH i automatyczne synchronizowanie zmian na zdalnym komputerze. Powinien działać na prawie wszystkich systemach POSIX (sam używam go z OS X do łączenia się z maszynami Linux i edycji plików w Sublime Text). Jest darmowy i open source. Chciałbym trochę opinii.
Aby uzyskać więcej informacji: jest to zasadniczo zestawienie Git / SSH napisane w języku Python, które pozwala edytować pliki i foldery na zdalnym komputerze w lokalnym edytorze. Nie musisz konfigurować modułów jądra, nie musisz mieć stałego połączenia, wszystko odbywa się automatycznie i nie będzie kolidować z istniejącą kontrolą źródła, ponieważ korzysta z niedziałającego repozytorium Git. Ponadto, ponieważ jest zbudowany na Git, jest niezwykle szybki i obsługuje automatyczne łączenie plików, które mogą się zmieniać na obu końcach, w przeciwieństwie do SSHFS / SFTP, który po prostu zatka dowolne pliki ze starszymi znacznikami czasu.
źródło
Możesz użyć sftp, aby zamontować zdalny katalog na komputerze z lokalizacją, a następnie po prostu otworzyć pliki przy użyciu Sublime text w normalny sposób.
Aby zamontować katalog zdalny za pomocą sftp, wpisz następujące polecenie w menedżerze plików systemu Linux;
Może wydawać się powolny w zależności od prędkości Internetu. Ale to zadziałało dla mnie.
źródło
Wiem, że to już dawno, ale mam naprawdę fajny sposób na zrobienie tego, co warto udostępnić.
Co jest wymagane w Conemu i WinSCP . To są proste instrukcje
Otwórz program WinSCP.exe i zaloguj się na wybranym serwerze zdalnym (
stwierdziłem, że ważne jest zalogowanie się przed dołączeniem ...).
W preferencjach dla WinSCP - dwa ustawienia do zmiany. Wybierz interfejs typu Explorer, a nie Commander - aby nie widzieć plików lokalnych. Chyba że chcesz (ale wydaje się, że byłoby to do bani tutaj). Ustaw Sublime jako domyślny edytor.
Po otwarciu ConEmu kliknij pasek kart prawym przyciskiem myszy i wybierz opcję
Attach to...
. Zostanie otwarte okno dialogowe z uruchomionymi aplikacjami. Wybierz, WinSCP i wybierz OK. ConEmu będzie teraz miał otwartą kartę z WinSCP wyświetlającą twoje zdalne pliki.Kliknij prawym przyciskiem myszy kartę WinSCP i wybierz
New console...
. Po otwarciu okna dialogowego wprowadź ścieżkę do pliku Sublime wykonywalnego w systemie. Przed naciśnięciemStart
w polu z napisemNew console split
wybierz przycisk opcjito right
i ustaw procent. Zwykle wybieram 75%, ale możesz to dostosować do własnych upodobań i można to później zmienić.Sidebar->Hide Sidebar
, i bam, masz teraz zdalne pliki w dokładnie taki sam sposób, jak lokalnie - z kilkoma zastrzeżeniami, które oczywiście dotyczą edycji czegokolwiek zdalnie. WinSCP jest jednak błyskawicznie szybki.Mam dwa monitory - przeglądarka Chrome na lewym monitorze, edytor kodu na prawym monitorze. Poza
ConEmu
tym tworzę kolejną zakładkę i ssh w witrynie, nad którą pracuję, dzięki czemu mogę wykonywać takie czynności, jak uruchamianiegulp
lubgrunt
zdalnie, a także manipulowanie plikami z wiersza polecenia. Poważnie przyspieszyłem rozwój.Oto zrzut ekranu:
źródło
Jest to najprostszy sposób na lokalną edycję plików znajdujących się na zdalnym hoście, na którym wcześniej ustawiłeś ssh na zdalny adres IP
Gotowe !!!
Teraz na hoście lokalnym po prostu rozpocznij edycję plików ... kiedy wyświetlasz katalog dir lokalnie, może nie wyświetlać niczego, dopóki nie przejdziesz do subdiru lub nie wyświetlisz konkretnego pliku ... leniwe ładowanie ... nie ma to wpływu na edycję plików
więc powyżej tak naprawdę edytuje zdalny plik o
W przypadku systemu OSX lub Windows zapoznaj się z tym poradnikiem od Digital Ocean
źródło
Innym rozwiązaniem Mac podobnym do osxfuse jest po prostu użycie klienta Transmit FTP z Panic Software, który pozwala zamontować zdalny folder jako dysk lokalny. Obsługuje SFTP, który jest bardzo bezpieczny.
źródło
Pracowałem nad projektem o nazwie GiySync . Nadal wymaga trochę pracy, ale jest to oprogramowanie typu open source i używam go codziennie od kilku lat. Pracuję również nad natywną wersją systemu OS X, którą nazwałem GitSyncApp
Obecnie jest to tylko OS X, ale powinno być łatwo dodać obsługę Linuksa, a być może także Windowsa.
Działa poprzez obserwowanie zdarzeń systemu plików i używa git do synchronizowania folderu projektu na komputerze lokalnym a serwerem.
Wypróbowałem inne rozwiązania, takie jak bezpiecznik osx, Expand Drive, Transmit, kilka rozwiązań wykorzystujących rsync itp. Wszystkie one działają „OK” w przypadku małych projektów, ale jeśli pracujesz z dużą ilością kodu, nie działały one dla mnie.
Wiele opcji systemu plików wykonuje buforowanie w celu zwiększenia wydajności, co jest w porządku, dopóki tak nie jest. Na przykład, jeśli pracujesz z innymi ludźmi i ktoś inny zmienia pliki na serwerze.
Miałem też problemy, gdybym był w niestabilnej lub wolnej sieci, w której kończyłyby się puste pliki. Lub plik, który nie został zsynchronizowany, wtedy buforowanie stało się dziwne; mam nadzieję, że niedawno popełniłeś. Użycie git rozwiązuje ten problem, ponieważ sprawdza integralność każdego zatwierdzenia.
Dwie dodatkowe funkcje:
źródło
W zależności od konkretnych potrzeb możesz rozważyć użycie BitTorrent Sync. Utwórz folder współdzielony na komputerze domowym i roboczym. Edytuj pliki na komputerze domowym (za pomocą Sublime lub cokolwiek chcesz), a zostaną one zsynchronizowane automatycznie po zapisaniu. BitTorrent Sync nie polega na centralnym serwerze przechowującym pliki (a la Dropbox i tym podobne), więc teoretycznie powinieneś unikać wszelkich problemów z powodu przechowywania przez firmę zewnętrzną poufnych informacji.
źródło
Rozwiązanie, które działało świetnie dla mnie - edytuj lokalnie na komputerze Mac i automatycznie zsynchronizuj plik ze zdalnym komputerem
Upewnij się, że masz zdalne logowanie do zdalnego komputera. Jeśli nie, wykonaj następujące kroki http://osxdaily.com/2012/05/25/how-to-set-up-a-password-less-ssh-login/
utwórz plik w ~ / Library / LaunchAgents / filesynchronizer.plist, o następującej treści:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>filesynchronizer</string> <key>ProgramArguments</key> <array> <string>/usr/bin/rsync</string> <string>-avz</string> <string>/Users/USERNAME/SyncDirectory</string> <string>USERNAME@REMOTEMACHINE:~</string> </array> <key>WatchPaths</key> <array> <string>/Users/USERNAME/SyncDirectory</string> </array> </dict> </plist>
W oknie terminala uruchom
launchctl load ~/Library/LaunchAgents/filesynchronizer.plist
Otóż to. Wszelkie zmiany dowolnych plików w ~ / SyncDirectory zostaną zsynchronizowane z ~ / SyncDirectory na komputerze zdalnym. Zmiany lokalne zastąpią wszelkie zmiany zdalne.
Spowoduje to utworzenie uruchomionego zadania, które monitoruje SyncDirectory, a gdy tylko coś się zmieni, uruchamia rsync, aby zsynchronizować katalog ze zdalnym komputerem.
źródło
lsyncd wydaje się być dobrą alternatywą dla podejścia sshfs. Jeśli użyjesz „-delay 0”, działa to w czasie rzeczywistym.
źródło
Użyj FileZilla
Dotyczy to użytkowników komputerów Mac i Windows (używam na komputerach Mac). Przez lata korzystałem z kilku wymienionych odpowiedzi i odkryłem, że FileZilla odpowiada moim potrzebom podczas edycji plików na zdalnym hoście, do którego mam dostęp SSH. Jest również szybki w konfiguracji.
View/Edit
.źródło