Django migrations help update the database when you change your models. First, you write or change your model code. Then you run 'python manage.py makemigrations' which creates migration files describing those changes. Next, you run 'python manage.py migrate' to apply those changes to the database schema. This process keeps your database structure in sync with your Python code. If you add a new field to a model, you must run makemigrations to create a new migration file, then migrate to update the database. Skipping makemigrations means migrate has no instructions and does nothing. Migration files are Python scripts stored in your app's migrations folder. They can be inspected or edited carefully. This workflow ensures your app and database evolve together safely.