Saya mencoba menggunakan Sublime Text 2 sebagai editor ketika saya SSH masuk ke server pekerjaan saya, dan saya bingung. Saya menemukan ini http://urbangiraffe.com/2011/08/13/remote-editing-with-sublime-text-2/ (di antara banyak posting lainnya) yang sepertinya membantu, tapi saya tidak mengikutinya dengan tepat , khususnya dengan nilai apa yang harus saya masukkan untuk variabel jarak jauh di baris 5. Saya menetapkan "/ Users / path / ke / local / copy" ke direktori root lokal saya, tetapi saya tidak tahu apakah itu benar atau jika ada lebih banyak melakukan. Adakah pikiran? Saya menggunakan OSX10.8
ssh
sublimetext2
pencuri jempol
sumber
sumber
osxfuse
dansshfs
pada mac saya untuk me-mount direktori remote secara lokal dan kemudian mengedit melalui ST2.Jawaban:
Ada tiga cara:
Gunakan plugin SFTP (komersial) http://wbond.net/sublime_packages/sftp - Saya pribadi merekomendasikan ini, karena setelah pengaturan kunci SSH publik dengan frasa sandi itu aman, mudah dan bernilai setiap sen http://opensourcehacker.com/2012/ 10/24 / ssh-key-and-passwordless-login-basics-for-developers /
Pasang remote sebagai sistem file lokal menggunakan
osxfuse
dansshfs
seperti yang disebutkan dalam komentar. Ini mungkin sedikit sulit, tergantung pada versi OSX dan keahlian Anda dengan sistem file UNIX.Meretas bersama sesuatu seperti rmate yang melakukan pengeditan file melalui tunneling jarak jauh menggunakan semacam daemon lokal (sangat sulit, rumit, tetapi kompatibel dengan sudo) http://blog.macromates.com/2011/mate-and-rmate/
Juga, secara teori, Anda dapat menginstal X11 pada server jauh dan menjalankan Sublime di sana melalui VNC atau penerusan X11, tetapi tidak ada gunanya melakukan ini.
sumber
Anda dapat menggunakan rsub , yang terinspirasi dari TextMate
rmate
. Dari uraian:Berikut tutorial yang bagus tentang cara mengaturnya dengan benar.
sumber
Saya menggunakan Windows dan telah menggunakan 4 metode: SFTP , WinSCP , Unison dan Sublime Text di Linux dengan X11 meneruskan SSH ke Windows (ya Anda dapat melakukan ini tanpa konfigurasi yang berantakan dan menggunakan alat gratis).
Cara keempat adalah yang terbaik jika Anda dapat menginstal perangkat lunak pada mesin Linux Anda.
Cara keempat:
MobaXterm
subl
Catatan: Saat memanggil subl jika komplain untuk perpustakaan tertentu - pastikan Anda menginstalnya untuk memanggil sublimetext dari mobaxterm dengan sukses.
Jika Anda tidak dapat menginstal perangkat lunak pada kotak Linux Anda, yang terbaik adalah Serentak. Mengapa?
SFTP
Pengaturan: Instal paket SFTP Sublime Text. Paket ini membutuhkan lisensi.
Di sftp-config, saya biasanya mengatur:
Ini, selain terminal SSH ke mesin memberi saya pengalaman mengedit jarak jauh yang cukup mulus.
WinSCP
Sejak saat itu, WinSCP akan menjaga perubahan Anda disinkronkan.
Bekerja di folder lokal menggunakan SublimeText. Pastikan saja Sublime Text diatur untuk menebak akhir baris dari file yang sedang diedit.
Serentak
Saya telah menemukan bahwa jika source tree sangat besar (sekitar beberapa ratus MB dengan hierarki yang dalam), maka metode WinSCP yang dijelaskan di atas mungkin agak lambat. Anda bisa mendapatkan kinerja yang jauh lebih baik menggunakan Unison . Sisi buruknya adalah bahwa Unison tidak otomatis (Anda perlu memicunya dengan penekanan tombol) dan memerlukan komponen server untuk dapat berjalan di mesin linux Anda. Sisi baiknya adalah transfernya sangat cepat, sangat dapat diandalkan, dan mengabaikan file, folder, dan ekstensi sangat mudah diatur.
sumber
SFTP setup
tautan. Saya tidak tahu apakah SFTP adalah perangkat lunak Windows atau paket Sublime.Sebagai tindak lanjut dari jawaban @ ubik, berikut adalah tiga langkah sederhana (satu kali) untuk menjalankan perintah 'subl' di server jauh Anda:
rsub
paket dalam Teks Sublime menggunakan Manajer Paket Sublime[ Lokal ] Jalankan perintah Bash berikut (ini akan membuat terowongan SSH , yang merupakan saus rahasia rsub):
[ Server ] Jalankan perintah Bash berikut di server jauh Anda (ini akan menginstal perintah shell 'subl'):
Dan voila! Anda sekarang menggunakan Teks Luhur melalui SSH.
Anda dapat membuka contoh file dalam Sublime Text dari server dengan sesuatu seperti
subl ~/test.txt
sumber
/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
. Pikiran?Saya menggunakan MacOS, dan cara paling nyaman bagi saya adalah menggunakan CyberDuck , yang gratis (juga tersedia untuk Windows). Anda dapat terhubung ke sistem file SSH jarak jauh Anda dan mengedit file Anda menggunakan editor lokal Anda. Apa yang dilakukan CyberDuck adalah mengunduh file ke tempat sementara di OS lokal Anda dan membukanya dengan editor Anda. Setelah Anda menyimpan file, CyberDuck secara otomatis mengunggahnya ke sistem jarak jauh Anda. Tampaknya transparan seolah-olah Anda mengedit file jarak jauh menggunakan editor lokal Anda. Para pengembang Cyberduck juga membuat MountainDuck untuk memasang sistem file jarak jauh.
sumber
Anda dapat mencoba sesuatu yang telah saya kerjakan bernama ' xeno '. Ini akan memungkinkan Anda untuk membuka file / folder dalam Teks Sublime (atau editor lokal sebenarnya) melalui koneksi SSH dan secara otomatis menyinkronkan perubahan ke mesin jarak jauh. Ini seharusnya bekerja pada hampir semua sistem POSIX (saya sendiri menggunakannya dari OS X untuk terhubung ke mesin Linux dan mengedit file dalam Teks Sublime). Ini gratis dan open source. Saya ingin umpan balik.
Untuk informasi lebih lanjut: ini pada dasarnya adalah Git / SSH mashup yang ditulis dengan Python yang memungkinkan Anda untuk mengedit file dan folder pada mesin jarak jauh di editor lokal. Anda tidak perlu mengkonfigurasi modul kernel, Anda tidak perlu memiliki koneksi persisten, semuanya otomatis, dan itu tidak akan mengganggu kontrol sumber yang ada karena menggunakan repositori Git yang tidak berfungsi. Juga, karena dibangun di atas Git, itu sangat cepat dan mendukung penggabungan file secara otomatis yang mungkin berubah di kedua ujungnya, tidak seperti SSHFS / SFTP yang hanya akan menghancurkan semua file dengan cap waktu yang lebih lama.
sumber
Anda dapat menggunakan sftp untuk memasang direktori jarak jauh pada mesin lokasi Anda dan kemudian cukup buka file menggunakan teks Sublim seperti yang biasa Anda lakukan.
Untuk memasang direktori jarak jauh menggunakan sftp, masukkan berikut ini di manajer file Linux Anda;
Ini mungkin terlihat lambat tergantung pada kecepatan internet Anda. Tetapi ini berhasil bagi saya.
sumber
Saya tahu ini sudah sangat tua, tetapi saya memiliki cara yang sangat keren untuk melakukan hal ini dan layak untuk dibagikan.
Apa yang diperlukan di Conemu dan WinSCP . Ini adalah instruksi sederhana
Buka WinSCP.exe dan login ke server jarak jauh yang saya inginkan (saya
menemukan bahwa penting untuk login sebelum memasang ...).
Dalam preferensi untuk WinSCP - dua pengaturan berubah. Pilih jenis antarmuka Explorer dan bukan Commander - sehingga Anda tidak melihat file lokal. Kecuali Anda mau (tapi itu sepertinya akan payah di sini). Atur Sublime sebagai editor default Anda.
Dengan ConEmu terbuka, klik kanan bilah tab dan pilih opsi
Attach to...
. Kotak dialog akan terbuka dengan aplikasi Anda yang sedang berjalan. Pilih, WinSCP dan pilih OK. ConEmu sekarang akan memiliki tab terbuka dengan WinSCP menampilkan file jarak jauh Anda.Klik kanan pada tab WinSCP dan pilih
New console...
. Ketika kotak dialog terbuka, masukkan path ke Sublime yang dapat dieksekusi pada sistem Anda. Sebelum Anda menekanStart
, Di kotak yang mengatakanNew console split
pilih tombol radioto right
dan atur persentase. Saya biasanya memilih 75%, tetapi Anda dapat menyesuaikan ini sesuai dengan keinginan Anda, dan itu bisa diubah kemudian.Sidebar->Hide Sidebar
, dan bam, Anda sekarang memiliki file jarak jauh dengan cara yang persis sama seperti yang Anda lakukan secara lokal - dengan beberapa peringatan tentu saja yang disertai dengan pengeditan apa pun dari jarak jauh. WinSCP ringan meskipun.Saya memiliki dua monitor - browser Chrome layar monitor kiri, monitor kanan menampilkan editor kode. Juga di
ConEmu
, saya membuat tab lain dan ssh ke situs yang saya kerjakan, jadi saya bisa melakukan hal-hal seperti menjalankangulp
ataugrunt
jarak jauh dan juga memanipulasi file dari baris perintah. Serius mempercepat pembangunan.Berikut screenshotnya:
sumber
Ini adalah cara termudah untuk mengedit file secara lokal yang hidup pada host jarak jauh di mana Anda sebelumnya telah mengatur ssh ke IP jarak jauh
Selesai !!!
Sekarang pada host lokal baru mulai mengedit file ... ketika Anda daftar dir secara lokal itu mungkin tidak daftar apa pun sampai Anda cd ke subdir atau daftar file tertentu ... lazy loading ... ini tidak berdampak mengedit file
jadi di atas sebenarnya mengedit file jarak jauh di
Untuk OSX atau Windows, lihat tut ini dari yang sejenis di Digital Ocean
sumber
Solusi mac lain yang mirip dengan osxfuse adalah dengan menggunakan Transmit FTP client dari Panic Software, yang memungkinkan Anda untuk memasang folder jauh sebagai disk lokal. Ini mendukung SFTP, yang sangat aman.
sumber
Saya telah mengerjakan proyek bernama GiySync . Masih perlu beberapa pekerjaan, tapi ini open source dan saya sudah menggunakannya setiap hari selama beberapa tahun. Saya juga sedang mengerjakan versi OS X asli yang saya sebut GitSyncApp
Saat ini hanya OS X tetapi harus mudah untuk menambahkan dukungan untuk Linux, dan mungkin juga Windows.
Ini bekerja dengan menonton peristiwa sistem file dan digunakan untuk git untuk menyinkronkan folder proyek pada mesin lokal Anda dan server.
Saya mencoba solusi lain seperti osx fuse, Expand Drive, Transmit, beberapa solusi yang menggunakan rsync, dll. Semuanya bekerja 'OK' untuk proyek-proyek kecil, tetapi jika Anda bekerja dengan banyak kode mereka tidak bekerja untuk saya.
Banyak opsi sistem file melakukan caching untuk meningkatkan kinerja, yang baik-baik saja, sampai tidak. Seperti jika Anda bekerja dengan orang lain dan orang lain mengubah file di server.
Saya juga mengalami masalah jika saya berada di jaringan yang rapuh atau lambat di mana saya akan berakhir dengan file kosong. Atau file yang tidak disinkronkan, maka caching menjadi aneh; semoga Anda berkomitmen baru-baru ini. Menggunakan git memecahkan masalah ini karena memeriksa integritas setiap komit.
Dua fitur bonus:
sumber
Tergantung pada kebutuhan Anda yang sebenarnya, Anda dapat mempertimbangkan menggunakan BitTorrent Sync. Buat folder bersama di PC rumah Anda dan PC kantor Anda. Edit file pada PC rumah Anda (menggunakan Sublime atau apa pun yang Anda suka), dan mereka akan menyinkronkan secara otomatis saat Anda menyimpan. BitTorrent Sync tidak bergantung pada server pusat yang menyimpan file (ala Dropbox dan sejenisnya), jadi Anda secara teori harus jelas dari masalah apa pun karena pihak ketiga menyimpan info sensitif.
sumber
Sebuah solusi yang bekerja sangat baik untuk saya - mengedit secara lokal di Mac, dan memiliki file secara otomatis disinkronkan ke mesin jarak jauh
Pastikan Anda memiliki login tanpa kata sandi ke mesin jarak jauh. Jika tidak, ikuti langkah-langkah ini http://osxdaily.com/2012/05/25/how-to-set-up-a-password-less-ssh-login/
buat file di ~ / Library / LaunchAgents / filesynchronizer.plist, dengan konten berikut:
<?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>
Di jendela terminal, jalankan
launchctl load ~/Library/LaunchAgents/filesynchronizer.plist
Itu dia. Setiap perubahan pada file apa pun di ~ / SyncDirectory akan disinkronkan ke ~ / SyncDirectory pada mesin jarak jauh. Perubahan lokal akan menggantikan perubahan jarak jauh apa pun.
Ini menciptakan pekerjaan launchd yang memantau SyncDirectory, dan setiap kali ada perubahan, jalankan rsync untuk menyinkronkan direktori ke mesin jarak jauh.
sumber
lsyncd tampaknya menjadi alternatif yang bagus untuk pendekatan sshfs. Jika Anda menggunakan "-delay 0" itu berfungsi secara real-time.
sumber
Gunakan FileZilla
Ini berlaku untuk pengguna Mac dan Windows (saya gunakan di Mac). Saya telah menggunakan beberapa jawaban yang terdaftar selama bertahun-tahun dan telah menemukan bahwa FileZilla sangat sesuai dengan kebutuhan saya ketika mengedit file pada host jarak jauh yang saya memiliki akses SSH. Pengaturannya juga cepat.
View/Edit
.sumber