# add your media, database, venv, __pycache__ to the .gitignore (there is a compelete list that you can find here: https://github.com/jpadilla/django-project-template/blob/master/.gitignore)
# keep migration files in the git (you will need to migrate them in target server)
# don't run "makemigrations" in the target server (you will need to just run "migrate")
# $ pip freeze > requirements.txt
# make appropriate changes in your project settings.py file (change DEBUG to False and etc)
# push your code to your git-server
# pull your code in your target server
# give right permissions to the web-server (e.g. $ chown www-data:www-data -R /var/www/myproject)
# make a new venv in the target server and activate it
# $ sudo pip install -r requirements.txt
# sudo ./venv/bin/python3 manage.py migrate
# restart your web-server (in case of apache: $ sudo service apache2 restart)
django-admincompilemessages# Compiles .po files to .mo files for use with builtin gettext support
django-admincreatecachetable# Creates the tables needed to use the SQL cache backend.
django-admindbshell# Runs the command-line client for specified database, or the default database if none is provided.
django-admindiffsettings# Displays differences between the current settings.py and Django's default settings.
django-admindumpdata# Output the contents of the database as a fixture of the given format (using each model's default manager unless --all is specified).
django-adminflush# Removes ALL DATA from the database, including data added during migrations. Does not achieve a "fresh install" state.
django-admininspectdb# Introspects the database tables in the given database and outputs a Django model module.
django-adminloaddata# Installs the named fixture(s) in the database.
django-adminmakemessages# Runs over the entire source tree of the current directory and pulls out all strings marked for translation. It creates (or updates) a message file in the conf/locale (in the django tree) or locale (for projects and applications) directory. You must run this command with one of either the --locale, --exclude, or --all options.
django-adminsendtestemail# Sends a test email to the email addresses specified as arguments.
django-adminshell# Runs a Python interactive interpreter. Tries to use IPython or bpython, if one of them is available. Any standard input is executed as code.
django-adminshowmigrations# Shows all available migrations for the current project.
django-adminsqlflush# Returns a list of the SQL statements required to return all tables in the database to the state they were in just after they were installed.
django-adminsqlmigrate# Prints the SQL statements for the named migration.
django-adminsqlsequencereset# Prints the SQL statements for resetting sequences for the given app name(s).
django-adminsquashmigrations# Squashes an existing set of migrations (from first until specified) into a single new one.