Sådan opsættes sublim tekst sFTP til fjernudvikling


Denne artikel er den anden i en serie om sublim tekst og hvordan man konfigurerer den til fjernudvikling ved hjælp af SFTP-pakken. Jeg foreslår, at du henviser til vores tidligere artikel om installation og konfiguration af sublim tekst 3.

Det meste af vores udviklings- og implementeringsarbejde sker på fjernserveren eller cloud-serverne. I så fald kan vi bruge den sublime SFTP-pakke til at arbejde med eksterne servere, hvor vi kan skubbe (Lokal til fjernbetjening) eller trække (Fjern til Lokal) koder/filer ved hjælp af filoverførselsprotokol. SFTP kommer med en licensomkostning, men vi kan installere pakken og bruge den på ubestemt tid.

  • FTP, SFTP, and FTPS protocols are supported.
  • Can either use password or SSH key-based authentication.
  • Sync folders – Locally, Remotely, and Bi-directionally.
  • Possible to sync only recently made changes.
  • The difference in local vs. remote versions of a file.
  • Persistent connections for good performance.

Installation af sFTP på Sublime Text Editor

Forudsat at du har installeret og konfigureret pakkekontrol som beskrevet i artiklen, COMMAND PALLET [CTRL + SHIFT + P] → INSTALL PACKAGE → SFTP.

Åbn nu COMMAND PALLET [CTRL + SHIFT + P] → Type SFTP. Du finder flere muligheder for at arbejde med SFTP-funktioner. Vi vil undersøge alle disse muligheder i løbet af denne artikel.

Jeg har en mappe, hvor den indeholder to python-scripts, der synkroniseres til en ekstern maskine. Min fjernmaskine er Linux Mint 19.3, der kører på en VM. Lad os nu konfigurere fjernopsætningen. Højreklik på projektmappen → SFTP/FTP → Kort til fjernbetjening.

sftp-config.json -filen oprettes i projektmappen, der indeholder fjernkonfigurationsindstillingerne.

Lad os opdele indstillingerne og konfigurere nogle vigtige parametre. Der er tre forskellige protokoller (SFTP, FTP og FTPS) kan bruges. Her bruger vi “SFTP”.

Vi konfigurerer nu fjernværtsoplysninger som værtsnavn, brugernavn og port. Adgangskode bliver bedt om, når vi starter synkroniseringen. Værtsnavnet kan være FQDN eller IP-adresse, og som standard er portnummer 22.

SSH-nøglebaseret godkendelse er også mulig, vi kan oprette et offentligt-privat nøglepar, og nøglen kan peges på placeringen ved hjælp af parameteren “ssh_Key_file”.

Konfigurer stien til den eksterne bibliotek "remote_path", hvor projektfiler og mapper skal synkroniseres. Vi kan også indstille fil- og katalogtilladelser ved hjælp af "file_permission" og "dir_permission" parametre. Vi kan ignorere filer og mapper, der skal synkroniseres, ved at angive filidentifikatoren i "ignore_regexes".

Vi har foretaget nogle obligatoriske konfigurationer i sftp-config.json for at begynde at synkronisere vores filer til den eksterne maskine. Vi har et par flere muligheder at konfigurere afhængigt af behovet. Men lige nu er dette de vigtige parametre, som vi har brug for for at komme i gang. Nu i min eksterne maskine er min mappe /home/tecmint tom. Vi uploader projektmappen til /home/tecmint nu.

Højreklik på projektmappe → SFTP/FTP.

Sublim tekst sFTP-operationer og -brug

Lad os opdele alle muligheder.

Uploader den lokale projektmappe til den eksterne mappe, der er konfigureret i filen sftp-config.json . Alle handlinger vises nederst i den sublime tekst.

Begge filer i det lokale bibliotek uploades til det eksterne bibliotek. sftp-config.json -filerne springes over.

Vi kan omdøbe både fjern- og lokalmappe på samme tid ved at vælge omdøbe indstillinger for lokale og eksterne mapper. Det vil bede dig om at indtaste et nyt navn i bunden af ST.

Denne indstilling sletter den aktuelle projektmappe fra både fjernmaskine og lokal maskine sammen med sftp-config.json -fil.

Upload filerne/mapperne til den eksterne maskine. Forskellen mellem upload og synkronisering er, synkronisering sletter alle ekstra filer, der ikke er i den lokale projektmappe. For at demonstrere dette havde jeg oprettet en fil kaldet “dummy.py” i min fjernmaskine.

Nu prøver jeg at synkronisere den lokale → fjernbetjening, den vil bede mig om bekræftelse, og filen dummy.py fjernes automatisk.

Synkroniser fjernfiler lokalt og fjern eventuelle ekstra filer i den lokale projektmappe.

Synkronisering af begge retninger giver os mulighed for at opbevare identiske kopier i både fjernbetjening og lokal. Det vil være nyttigt, når vi foretager forskellige ændringer i lokale såvel som eksterne mapper på samme tid.

Vi kan få adgang til fjernfiler og andre mapper end projektmappen ved hjælp af indstillingen Gennemse fjernbetjening.

Nu har vi konfigureret en fjernhost til at synkronisere vores projekt. Det er også muligt at oprette flere fjerntilknytninger. Vælg indstillingen "Alternativ ekstern kortlægning", som opretter sftp-config-alt.json.

Dette er den samme konfigurationsfil som sftp-config.json-filen, hvor vi skal konfigurere en anden fjernhost. Jeg har konfigureret den anden fjernoplysninger og gemt den. Vi kan have konfigureret flere fjerntilknytninger.

Vi kan nu beslutte, hvilken fjernkortlægning vi skal vælge.

Vælg "Skift ekstern kortlægning ...". Det vil bede al konfigureret kortlægning om at vælge fra. Vælg kortlægningen fra prompten, og fra den næste handling vil filer og mappesynkronisering ske på den valgte kortlægning.

Vi kan kontrollere forskellen mellem lokale og eksterne filer ved hjælp af "Diff Remote File" -muligheden. Jeg oprettede en fil dummy.py i fjernmaskinen og tilføjede print ("Hello world") , men den synkroniseres ikke lokalt. Hvis jeg nu prøver at se ændringerne med en ekstern fil, vil den udskrive de ændringer, jeg har foretaget.

Der er standard tastebindinger, vi kan bruge i stedet for at svæve gennem menuerne hele tiden. At kende listen over nøglebindinger FORETRUKNE → PAKKEINDSTILLINGER → SFTP → NØGLEBINDINGSSTANDARD.

Vi kan også definere vores eget sæt nøglebindinger, som tilsidesætter standardbindingerne. For at oprette brugerdefinerede nøglebindinger til SFTP FORETRUKNE → PAKKEINDSTILLINGER → SFTP → NØGLEBINDINGER → BRUGER.

Hidtil i denne artikel har vi set, hvordan man installerer SFTP-pakken til at overføre filer mellem lokale og eksterne maskiner via filoverførselsprotokol. Vi har også set, hvordan man uploader/synkroniserer mapper fra Local til remote og remote til lokale maskiner. Standard tastebindinger, og hvordan man indstiller brugerdefinerede tastebindinger.