Praca ze zdalnym kodem za pomocą PhpStorm

Poza pracą w Holte Software Poland, w ramach mojej działalności gospodarczej, często pracuję nad projektami w PHP. Nie mam całego środowiska na lokalnej maszynie. Wykupiłem hosting na linuxpl.com, który daje mi serwer PHP, MySQL, poczty, a dodatkowo mogę tego używać korzystając z SSH. To bardzo wygodne narzędzie. Kod źródłowy trzymam na BitBucket, robię checkout repozytorium na hosting linuxpl i tam dokonuję modyfikacji.

No i teraz powstaje problem. W jaki sposób zmieniać zdalnie kod? Mogę trzymać lokalną kopię na swoim komputerze i każdą zmianę pliku uploadować na zdalny serwer przez FTP. To dosyć popularna metoda pracy, ale ja nie lubię tego rozwiązania. To rozwiązanie nie sprawdza się, gdy na tym samym kodzie pracuje kilka osób, co mi się zdarza. Sprawdzanie wszystkich plików przy uruchomieniu PHPStorm, pod kątem zmiany przez innych użytkowników, jest bardzo czasochłonne.

Jakie są alternatywy? Ja używam Expandrive (www.expandrive.com). Expandrive pozwala na podmontowanie zdalnego katalogu jako napęd w Windows. Expandrive korzysta z protokołu SFTP. Podmontowany napęd widoczny jest tak samo, jak każdy inny dysk w systemie(screen poniżej). W PHPStorm tworzę zwykły projekt, wskazuję katalog, i jestem gotowy do pracy. Rozwiązanie sprawdza się znakomicie.

Ten post brzmiały jak reklama Expandrive, gdyby nie fakt, że ja osobiście korzystam z wersji 1.8.4. To bardzo stara wersja, najnowszą jest 4.2. 4.2 jest do mojego zastosowania słaba. PHPStorm często zawiesza się w czasie edycji projektu na dysku podmontowanym przez 4.2. Problem polega na tym, że PHPStorm dosyć intensywnie skanuje katalog przy analizowaniu klas w celu podpowiedzi kodu, czego nie da się wyłączyć. 1.8.4 nie można już kupić, i ciężko nawet ją ściągnąć. I to jest główny powód tego wpisu. To jest link do instalki: Expandrive 1.8.4. Jeśli też używacie tę wersję, tutaj możecie ją ściągnąć. Polecam:)

Komentarze

Popularne posty z tego bloga

Opinie na temat hostingu linuxpl.com

Validation using ASP.NET MVC + Kendo UI + jquery validate unobtrusive