2014-07-24 3 views
3

업데이트 : 누군가가 PyHarm과 함께 PyHarm을 사용하려고 시도하는 것을보고 JetBrains는 "아니오"라고했습니다. 아마 이것은 단지 작동하지 않을 것입니까?WebStorm (JetBrains)을 SSHFS 탑재 개발 서버 (Mavericks, OSXFUSE)와 함께 사용 하시겠습니까? 지속적으로 드라이브를 분리합니다

제가 일하고있는 고객의 사무실에서 SSHFS로 마운트 된 디스크에서 WebStorm을 사용하려고합니다. 전에는 SSHFS를 사용한 적이 없습니다. OSX 10.9.2를 사용하고 있습니다. SSHFS를 설치하고 OSXFUSE를 설치했습니다.

SSHFS 마운트가 주기적으로 마운트 해제되지만, WebStorm을 사용하기 시작한 이래로 WebStorm을 시작할 때마다 마운트 해제되고 SSHFS 디스크의 파일 스캔이 시작됩니다. WebStorm은 "외부 파일 변경 사항 동기화 느릴 수 있습니다 : 프로젝트 파일을 볼 수 없습니다 (네트워크 마운트 아래에 있습니까?) "및 파일을 열려고하면 고정시킵니다. 한편 SSHFS 디스크가 분리되었습니다. 터미널을 통해 다시 탑재 할 경우 WebStorm은 만족스럽지 않고 동결되거나 그냥 앉아있을 수 있습니다.

"기존 파일의 새 프로젝트"를 사용하여 WebStorm 프로젝트를 설정했습니다 - SSHFS를 서버로 사용하여 설정하는 방법이 있습니까? SSHFS 디스크의 로그인과 암호 외에도 다른 서버 관련 정보는 없지만 얻을 수는 있습니다. 어떤 도움

덕분에 -

+1

몇 년 전에 SSHFS가 실제 파일 시스템으로 의존되어서는 안된다는 것을 상기 해 보았습니다. 특정 변경 사항은 즉시 전파되지 않기 때문에 ...하지만 지금은 어디에서 읽을 수 있습니까? 불행한 점은, 내가 생각하고있는 페이지에는 약간의 개조가 있었기 때문에 더 잘 행동하게되었습니다. 몇 년 전부터 파일 시스템 자체가 개선되어 이러한 조정이 필요하지 않을 수도 있습니다. 그러나 그것은 아직도 당신을 도울 수 없다, 나는 두렵다. – echristopherson

+1

혹시 이것에 대한 해결책을 찾았습니까? –

답변

6

이 내가 운영하고, 어쩌면 당신을 도울 수있는 방법이다. 내가 설정 한 설정이 있다면, 물어 보니 그냥 물어 보면 해결할 수 있습니다. 하지만 모두 훌륭하게 성공했습니다.

내 배포 환경은 Linux 배포판에서 멀리 떨어져 있지만, 개발 환경은 Mac 데스크톱 (직장에있을 때)과 Mac Air (Mac Air) 내가 집에있을 때). 내 프로젝트가 엄청나고 계약 상으로 랩톱을 도난 당하면 액세스 할 수있는 모든 컴퓨터로 코드를 옮길 수 없습니다. 그래서 나는 꽤 많은 일을하기 위해 ssh (그리고 sshfs)를 사용해야한다.

저는 집에있을 때 앉아서 VPN을 수동으로 시작합니다. 많은 변형이 있기 때문에이 부분을 수행하는 방법을 알고 있다고 가정합니다.

내가 터미널을 열고 호출 : 컴퓨터가 화면 보호기로 전환 할 때마다 나는이 끊어지고 싫어하기 때문에

caffeinate & 

. 이것이 연결이 끊긴 이유 일 수 있습니까? 내가 개발할 때마다이 터미널을 열어 둔다. 또한 터미널 세션을 컴퓨터간에 공유 할 수 있도록 tmux를 사용합니다. 어쨌든 ...

나는 서버와 클라이언트 사이에 설정된 마운트 포인트를 설정했다.

umount -f /Volumes/$MOUNTDIR/ 
umount -f /Users/$HOMEUSER/$MOUNTDIR 
mkdir /Users/$HOMEUSER/$MOUNTDIR 
sshfs [email protected]@SERVERADDR:/usr/$HOMEUSER/$MOUNTDIR /Users/$HOMEUSER/$MOUNTDIR 

그때 Webstorm, PyCharm, ADS를 시작은, 인 IntelliJ는 (내가 JetBrains의 팬이야) : 나는 (당신의 자신의 작품에 대한 사용자 정의) 마운트 포인트가 다운 될 때 실행하는 스크립트가 있습니다.

이 시점에서 $ MOUNTDIR 내에서 디렉토리를 열고 작업을 시작할 수 있습니다. 빌드를 실행해야한다는 것을 알게되면 여기에 팁이 있습니다. 로컬로 빌드하지 마십시오. SSH를 사용하여 서버에서 빌드 명령을 실행하거나 스크립트를 실행하십시오. 빌드가 실행 된 후 동기화의 오버 헤드는 빌드의 모든 단계를 가져 와서 쓰는 것보다 훨씬 적습니다.

VPN을 분실하면 연결이 끊어집니다. 컴퓨터가 잠자기 때마다 연결이 끊어 지곤했습니다. 그것을 고정시킨 카페인.

합리적인 규모의 프로젝트의 경우 이는 아마도 필요한 것 일 수 있습니다.다음은 최적화입니다. 두통이있는 경우에만 수행하십시오.

로드 시간을 단축하기 위해 마운트 작업에 포함되지 않은 로컬 프로젝트를 만듭니다. 프로젝트로 여는 첫 번째 디렉토리의베이스에 많이 작성되고 작성되는 .IDEA 디렉토리가 있습니다. 이 디렉터리의 내부에는 많은 파일이 작성되며 네트워크 속도에 따라 슬픔이 발생할 수 있습니다. 어디서나 유지 관리해야하는 설정이 있음을 의미하지만, 제 경우에는 성능 향상을 위해 비용을 지불하는 것이 좋습니다.

그래서이 작업을 수행하기 때문에 수동으로 디렉토리를 내 프로젝트에 추가해야합니다 (기본 설정/디렉토리 아래에 있음). 그러나 거대한 API로 작업하는 경우 어쨌든이 작업을 수행 할 수 있습니다. 인덱서에서 더 쉽게 사용할 수 있도록 '제외 된'것으로 참조 할 필요가없는 디렉토리를주의해서 표시합니다. 저는 수천 명의 다른 직원들과 공유 된 디렉토리 구조에서 작업하며 스트림이 교차하지 않는지 확인합니다.

저는 수천 개의 파일을 보유하고 있으며 동기화가 느려질 수 있습니다. 그러나 동기화는 앱을 종료하고 다시 돌아올 때만 발생합니다. 그리고 솔직히 합리적인 인터넷 연결을 사용하는 한 그렇게 끔찍한 것은 아닙니다.

이 정보가 도움이되기를 바랍니다. 이 작업을 워크 플로로 사용하기 시작한 후에는 다시 돌아 가지 않았습니다.

관련 문제