2012-11-19 4 views
2

로컬 프로젝트와 원격 프로젝트 간의 매핑을 수행하는 Sublime의 플러그인에 익숙합니다. 이렇게하면 파일 편집이 끝나면 오른쪽 클릭과 "파일 업로드"작업을 수행하여 원격 서버의 파일을 자동으로 업데이트 할 수 있습니다.SFTP를 통해 업로드 할 수있는 VIM 지원

VIM으로 프로그래밍하는 동안 무엇을하는 것이 가장 좋은 방법인지 궁금합니다. 로컬 프로젝트를 원격 프로젝트에 매핑하고 파일을 쉽게 업로드 할 수있는 쉬운 방법을 찾고 있습니다.

vim scp://[email protected]//path/to/directory/ 

편집 직접 파일 :

vim scp://[email protected]//path/to/directory/somefile.txt 

또는 경우에 당신이 원하는 모든 원격 서버에 파일을 편집 할 경우

감사

답변

8

는 는 정력의 netrw 기능을 시도 vim에 이미 있습니다. ESC을 입력하고 다음을 입력하십시오.

  1. ssh은 (리눅스, OSX에 대한 보통의 경우 설치;
    :e scp://[email protected]//path/to/directory/ 
    

    이 있다고 가정 당신이 Windows에 있다면 그것은 달려있다).

  2. 당신은 몇 가지 편리한 방법 (sshagent 및 키)을 통해 서버에 ssh 액세스
+0

이 좋은 답변입니다. 그러나, 매번 파일을 업로드하고 싶다면 : scp : .... 꽤 지루합니다. 해당 매핑을 수행 할 플러그인이 없다는 것에 놀랐습니다. –

+0

': e'는 한 번만 수행합니다. 이는 로컬 복사본이 있고 주기적으로 업로드하는 것과 달리 원격 서버에서 파일을 직접 편집하는 것과 같습니다. 따라서 파일을 평소대로 저장하면 (예 :': w' 또는': wq') 원격 서버의 파일도 저장됩니다. vim의 어떤 맛을 사용하고 있습니까? – Faiz

+0

@HommerSmith, 나는 [this plugin] (http://www.vim.org/scripts/script.php?script_id=1192)을 찾지 못해 놀랍습니다. – romainl

0

가장 심각한 FTP 클라이언트는 로컬 원격 파일을 편집 할 수 있습니다. Filezilla, gFTP, Transmit, Cyberduck, YummyFTP ... 모두 "Edit in ..."버튼이 있습니다. GUI FTP 클라이언트는 섹시한 해커 도구가 아니지만 매우 일을 잘 처리 할 수 ​​있습니다.

심각한 FTP 클라이언트에는 동기화 기능이나 폴더 감시자가 있습니다. 그러한 기능을 둘러 보는 것은 시간이 걸릴 것입니다.

$ vim sftp://[email protected]/filename 
$ vim ftp://[email protected]/filename 

을 원격 파일을 나열 : : 물론

, 당신은 또한 FTP 또는 SFTP를 통해 원격 파일을 편집 빔 자체를 사용할 수 있습니다

$ vim sftp://[email protected]/directory/ 

더 많은 정보를 원하시면 :help netrw를 참조하십시오.

Subversion, Git 또는 Mercurial과 같은 VCS를 사용해 보셨습니까?

+0

로컬 프로젝트와 원격 서버에 프로젝트가 있습니다. GIT를 사용한다는 사실에도 불구하고, 저는 로컬에서 변경 작업을 수행하고 SFTP를 통해 업로드 할 수 있기를 원합니다. 원격 서버의 파일을 편집하고 싶지는 않지만 로컬에서 편집하고 업로드하고 싶습니다. –

1

FTP를 통해 원격으로 파일을 편집 할 때 고유 한 단점이 있습니다. 로컬 컴퓨터에 코드 디렉토리가 없습니다. 즉, 코드를 로컬에서 검색하거나 태그를 빌드하고 Vim 등에서 자동 완성을 할 수 없습니다.

VCS를 사용하는 것은 좋지만 저장할 코드 버전이있는 경우에만 사용하십시오. 테스트 및 디버깅을 위해 몇 분마다 저장 작업을 수행하므로 VCS의 목적을 벗어납니다.

즉, sftp/ftp를 통한 편집은 완벽한 해결책입니다. 저는 Vim 애호가입니다. 그러나 위대한 ftp 클라이언트가되도록 강요하지 마십시오. Windows 사용자 인 경우 WinSCP의 동기화 기능을 사용해보십시오.모든 파일을 로컬로 가져올 수 있으며 업로드 버튼을 누르는 것에 대해 걱정할 필요가 없습니다.

http://winscp.net/eng/docs/task_keep_up_to_date

Loonix도 쉽게 :

http://en.wikipedia.org/wiki/SSHFS

관련 문제