Git is a wonderful tool that makes possible having your local repo and your GitHub repo always perfectly synchronized. This is cool and all, but — what about the production server? If you are in a shared hosting that doesn’t have git or SSH support, you’ll probably find stressful to manually update your application via FTP each time, even for the tiniest of the edits. Well, if that’s your case you really should check out git-ftp by RenĂ© Moser. Git-ftp is a straightforward way to connect to your FTP and automagically transfer only the files that changed since the last commit. The usage is fairly simple:
$ git ftp push --user  --passwd  ftp://example.com/public
And you can make it even simpler by just setting defaults in your project’s .git/config file:

$ git config git-ftp.user john
$ git config git-ftp.url ftp.example.com
$ git config git-ftp.password secr3t

Now you can just do:
$ git ftp push
That's all. Your production server is up-to-date. NB: There is also a little PHP script that that does deployments through FTP. It is called PHPloy, you may also use it. Source from simonewebdesign