Question

I would like to have a desktop PC and a laptop available for development. I am using XAMPP on the desktop which I use as my main workstation, however I'd like to just change location and be able to continue working on the laptop. It seems that it is possible to move the /htdocs folder to Dropbox so the XAMPP instances on both devices would use the same shared folder. That would be a part-solution, what about the question of databases, how would I go about that? I'm sure there are others who work in a similar fashion, so I'd like some pointers on how to set this up properly. Thanks

Was it helpful?

Solution

Your best bet is to set up version control. Given that you seem to assume you will basically always be networked, you might like to use github or bitbucket to create your "central" repository, and use your favourite DVCS to push changes between the repositories.

Conceptually the simplest, although perhaps not the best, depending on how you like to develop is to push all changes through the "master", and have both of your computers pull from there. Using mercurial or git, you can also push directly between the repositories on both of your computers.

I use bitbucket because it offers free, private repositories (github is free, but the free version only allows public repositories).

This also gives you the advantage of an offsite backup.

OTHER TIPS

Try using a SVN or CVS solution...

You can use a development environment which is virtulized and have a high availability. There are some virtualization services like (amazon, Microsoft) which you can utilize (They are paid services) .

If viruilization is not possible, you might want to maintain the scripts for the database in a version control tool . So when you switch commit the database changes in the version control tool , rerun the database scrips on the laptop to upgrade the database with latest information. Also same thing applies for HTTP files.

If the database creation script is out of question you might want to create a database snapshot with raw datafile , which should be checked in into version control tool before switch and checkout on the other machine . Refer following link on which files you want to check-in into version control tool.

http://dev.mysql.com/doc/refman/5.0/en/replication-howto-rawdata.html

You could include a virtual machine in your Dropbox folder. This way you can encapsulate your development environment in a single file and take it with you wherever you want.

I have done that with an Ubuntu VM and never had a problem.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top