You have a number of options, not specific to django, depending on how complicated your setup is and how much manual work you want to do-- and you want to automate as much as possible.
Going from least automated to most-
1) ssh into your server, pull from the repo and restart whatever processes need restarting that feed your app. Ideally you have symlinks or pointers to your git repo folders so you don't have any file copying to do
2) write a deploy script using fabric (<a href="http://docs.fabfile.org/en/1.4.3/tutorial.html" rel="nofollow">http://docs.fabfile.org/en/1.4.3/tutorial.html</a>) that does what you did manually in #1
3) use a tool like puppet, chef, or even salt (python-based)<p>Ultimately, you need to be doing #3, but it helps to go through #1 and #2 to get a sense for how awesome deployment management tools are.<p>A couple things to keep in mind:
- server authentication with git: you'll want to use public key-based methods to pull from git so you don't have to deal with entering passwords
- dev vs prod environment settings: you'll want to have a smooth way to transition config settings between your dev and prod environments so you aren't editing files everytime you deploy.<p>These are just a few tips-- the overall guiding principle is to automate everything. Anytime you find yourself doing a task more than twice, write a script to do it.
If you're so intent on finding a specific solution, why not try someone who prepackages deployments, like heroku.
<a href="https://devcenter.heroku.com/articles/django" rel="nofollow">https://devcenter.heroku.com/articles/django</a>