2

I have been working on a project for a while and have found it quite annoying to keep track of all the changes I make to my web application. I have done a bit of googling but have not found what I want, maybe I am not googling for the right things as I am new to SCM.

I have a webserver and I would like to ideally keep the latest up-to-date working version on the webserver. I was wondering if it would be possible to run a piece of software that will keep track of all the changes I make and automatically update the latest version via FTP to my web server?

The application is written in a mixture of html/css/javascript(mainly) and php/mysql for serverside.

Cheers, Josh

Josh Mc
  • 9,911
  • 8
  • 53
  • 66
  • Check out this question and answer: http://stackoverflow.com/questions/2950107/git-push-into-production-ftp – Doug Kress Aug 19 '11 at 04:12

3 Answers3

3

Yes this is possible. There are many tools at your disposal for source code control, build, and test automation. A keyword here is "Continuous Integration."

Build frameworks like TeamCity and Jenkins have a variety of post-build steps such as deployment to a web server as do many popular IDEs. These tools allow you to write scripts or use wizards to setup rules about what should happen after a code check-in, build, etc.

bn.
  • 7,739
  • 7
  • 39
  • 54
1

Check out Springloops and other services like it - it is basically a hosted subversion (and now GIT) repository that you can check your changes into, and it can incrementally and automatically publish your changes to your site's FTP directly from source control.

Matt Tew
  • 1,581
  • 1
  • 9
  • 15
1

Not FTP, but git is a solid VCS that can use ssh and other protocols for pushing to your web server.

Personally, I use gitolite as a central point to push my changes to under a repos directory, and I have a seperate rsync script that syncs the files between the public_html directory and my dev machine.

So if you are working primarily in *nix, check out git and rsync and optionally gitolite if you need fine-grained access control to the codebase.

scott
  • 974
  • 7
  • 10