Em programação, especialmente no contexto de bancos de dados e desenvolvimento de software, "migration" se refere ao processo de gerenciamento e aplicação de alterações na estrutura de um banco de dados. Isso pode incluir a criação de tabelas, alteração de colunas ou adição de índices.
No desenvolvimento de software, "migrations" são scripts ou arquivos que descrevem essas mudanças de forma incremental e são frequentemente usados em conjunto com frameworks de desenvolvimento web. Eles garantem que todos os desenvolvedores trabalham com a mesma versão da estrutura de dados e facilitam a reversão de mudanças, se necessário.
Por exemplo, em um projeto, uma migration pode ser usada para adicionar uma nova coluna em uma tabela existente. Essa migration é escrita, executada para aplicar a mudança ao banco de dados, e armazenada como parte do histórico de alterações do projeto.