kateland wrote:I'm looking for advice on setting up a development environment.
Xampp already is an development environment.
kateland wrote:I'd also like to easily push testing to production. Right now my push process is manual and tedious.
There is no standard tool for such complex process. I recommend to use the following standards:
a) Use same domain name for your local development as for production. Therefore you should apply the domain name to the local development to the hosts file of windows.
b) Use same directory names for development and production (as far as possible).
c) Use same MySQL Release and same PHP release as far as possible.
There is stil no other way than pushing manually your locally developed software to the production server. If you use same MySQL Releases (or at least Major Releases, MySQL 5.x for example), it might be enough to copy the whole MySQL data folder (which holds all databases and tables) between production and development.
My personal editor is "vi" on linux systems, sometime as well on windows (whereas I also like "TextPad" on Windows). Keep in mind, that on Windows text lines end differently to linux with "\r\n" (Carriage Return, Newline), whereas linux textfiles usually only have "\n" (Newline) at the end of textlines. Your Editor should support linux style textfiles. Usually FTP can handle this by setting transfer mode to ASCII instead of BINARY, but I do not recommend this handling, as it often leads to corrupted files when used in the wrong context. Therefore i recommend to use BINARY Transfer always and use an Windows Editor which supports linux like textfiles.
kateland wrote:I want to sync a Wordpress db, files, and a phpbb community (also php and mysql). I am not a pro developer and have never used versioning. If anyone has suggestions of what setups I should investigate I would really appreciate it.
See my comments above. But dont forget: this is NOT an Wordpress, phpbb etc. forum, this is the Xampp forum. Your questions are far from the goal of this forum.
P.S.: What you are looking for ist not "versioning" (this is for "versions" only), instead you are looking for (very sophisticated) "cross development" (as you want to develop on Windows Systems, where the production environment is a Linux server). This has always been a very sophisticated task and i dont know any tools which will do the necessary steps automatically. There are too many differences between the production and the target environment.