Best way to work on your code when you are away from your office
A lot of time I have to code from home. Normally I just开发者_JAVA百科 remote desktop to my computer at work and code. But it is remote desktop: slower, no dual monitor and ...
Is there a better way of doing this? Maybe a drive that follows you everywhere you go!
Quite a few of my collegues have the entire development environment in a Virtual PC installed on a small portable USB drive. When at the office they plug it in to the office computer. When having to work at home, they simply bring the USB drive and run it at their own personal PC.
Why not use a distributed SCM such as Git? You can work remotely and check into your local (laptop) repository, and sync to the office repository as and when you're at the office.
Work on a laptop and carry it with you
Ask your company if you can download the repository locally to your system instead of remoting. Worst case scenario they say no
I work from home a fair bit. At various times I've done most of what you have been advised to try:
- I can check code out from the company repo (SVN) onto a USB stick and use that at home;
- I have a company laptop which I can plug into the company VPN (security prevents doing this with my own PC, but then I use a Mac at home, Windows and Linux at work), and remote desktop to the development platform (which is remote from my office anyway);
- I've recently started using a Dropbox, and have a working copy checked out into my Dropbox at work which is automatically synced to my Dropbox at home;
- My development environment is a copy of Emacs, and the company provides compiler licences that I can install on my home computer, so no serious software issues.
With a good broadband connection any or all of these is very workable and quite productive. Like you I miss the multiple screens when I am at home, so I am thinking of buying a new one to get round that problem.
What’s the problem, license costs? If not, get a decent distributed versioning system and simply use your home computer. It’s not as dandy as using your computer as a remote client, but IMHO it’s much more practical.
sometimes i just copy the source to work on it at home. we use subversion for version control.. it's not the most comfortable when you aren't connected to the server, but it works. you might want to try some distributed version control system like mercurial or git, which should be more comfortable while you aren't connected to the central server since they'll still allow you to view logs, create branches/merge while offline. note that for all three there exist (more or less stable) windows clients: google for tortoisesvn (for subversion), tortoisehg (for mercurial) and tortoisegit (for git).
I've set up SVN repository on my home server. It doesn't require much, getting any old pc which is able to run some linux server is not a problem I guess.
It's much easier and safer to use revision control software instead of copying files to USB drive and back, since it's easy to overwrite some changes that way. Revision control does all the synchronization and comparision between versions, allowing you to follow changes you've made etc. I've picked SVN for several reasons, mainly because of it's easy server-side configuration and an excellent Windows client - TortoiseSVN.
However if you have enough of RAM memory both on your home pc/notebook and at the workplace, you could consider creating Virtual Machine. That way, once configured workplace might be set up in just a few minutes almost anywhere (I'm using VirtualBox that way for over a year).
精彩评论