The suggestion to keep a branch that reflects the live site is a good one. One additional thing I do is seperate out the live and dev settings into different files then conditionally import those into the settings.py file depending on which site you I'm working on.
So for example you have:
#settings.py
from .local_settings import * #import the settings specific to the environment (dev or live)
#other common settings go in here...
#local_settings.py
from .dev_settings import *
#dev_settings.py
DEV_SPECIFIC_SETTING = 123
This way you can keep settings.py
dev_settings.py
and live_settings.py
in version control by keeping local_settings out of version control.