BEST solution for sharing development env across devices
已回答
The setup:
- Desktop
- Laptop
- Headless server
The question:
What is the BEST way to share work between multiple devices. For example, suppose I'm working at my desk (e.g., IntelliJ on the desktop), and I see a rare break in the clouds, so I want to grab the laptop, and ride the bike down to the park and work there, picking up right where I left off on the desktop. When I get home, my desktop reflects the work I've done while down at the park.
I'm aware that JB offers several solutions (Fleet, Space, connect to remote IDE over SSH), but frankly, I'm a little overwhelmed as to which is the appropriate one for my needs. Any advice is greatly appreciated.
Thanks
请先登录再写评论。
There is no universal "best".
What many companies do is use something like Citrix to provide virtual workstations that you can log in to from different computers (usually restricted by firewalls, obviously). Expensive and obviously comes with performance penalties but it's the most comprehensive solution you can go for.
Remote desktop solutions work similarly and can be cheaper.
Obviously all such solutions need extensive security in place to prevent intruders taking over your workstations and getting complete access to your network(s).
JetBrains gateway / remote server seems like the way to go for that use case: https://www.jetbrains.com/help/idea/remote-development-starting-page.html.
Some people using tools like GitPod (https://www.gitpod.io/) and GitHub CodeSpaces (https://github.com/features/codespaces) to make spinning up / keeping in sync dev environments super-simple by leveraging cloud-based configuration, storage, and even compute resources. Might also fit your use case, but YMMV of course.
A bit late to the party but thought I would share my setup for future readers.
I have a computer at work, home and a laptop - just like the OP. I simply use a cloud git service (GitHub, GitLab etc) to check code into private repos and then pull them down on the alternate device I find myself working at. This model means I need my coding tools (PHP Storm and Rider) installed on each device - but this is easy enough. Once I've pulled down the latest source, I can work offline if need be (laptop does not need to be tethered for the full work session, only long enough to pull down the code, and then again to push up the code at the end of the session).
I have used this workflow for over 10 years and it works well for me. Hope that helps someone.