[eluser]WanWizard[/eluser]
You push updates to a repo, and pull updates from a repo. You will have to pull manually, there is no automatic mechanism.
There are (auto)deploy tools available, but a poor mans mechanism is to create a separate branch (or even repo) for your release code, and have the servers run from a local clone. This will allow you to automate the pull, for example via cron, or via a function in your CMS that calls git in the background.
You can then work in a development branch (or repo), and when you want to deploy, merge your development to the release branch.
As to your applications, are they one or seperate entities? Can you use one without the other? Are there seperate versions of one or the other? That would determine how to treat them.