Não? Então precisar ler o howto [1] seguinte sobre migrations com Phinx para automatizar e versionar as tabelas do sistema. Os frameworks PHP tradicionais já inclui migrations, mas pode ser que esteja em um sistema já construído que não foi pensado em migrations, imagina como é quando necessita fazer uma alteração de uma estrutura nas tabelas específica e/ou criar um tabela, enviar ALTER TABLE tabela ADD campo tipo AFTER campo;
e/ou CREATE TABLE table tabela ...
para todos né. Depois no deploy precisa lembrar qual foi a ordem que executou para poder executar no BD de produção.
Com migrations com Phinx, isso é mais prático e versionado, pois com um comando atualiza o BD de desenvolvimento, homologação e produção, bastando alterar o argumento especificando qual BD deseja aplicar.
Então, como aplicar o uso do migrations com Phinx na equipe de desenvolvimento? Cria um repositório a parte no Github ou Bitbucket com nome migrations. Os integrantes do time fazem fork, o clone do seu fork, adiciona o remote oficial do migrations.
1. fork do repositório migrations criado no Github ou Bitbucket2.
git clone < url repositório migrations do fork >
3.
git remote add upstream < url repositório oficial migrations >
4.
composer install
(obviamente irá colocar o diretório vendor do projeto migrations no arquivo .gitignore, então por isso terá que executar o passo 4 Assim para cada alteração na estrutura da tabela ou criar uma tabela, cria um migrations, executa e faz o commit no seu fork e o pull request no oficial. Provavelmente no time de desenvolvimento deve ter um grupo no Slack com canais direcionados sobre o projeto, deve ter um #canal banco de dados, então nesse canal comunica para atualizar com os seguintes comandos abaixo.
O Phinx também permite popular dados na tabela, que é chamado de seed, na qual é utilizado para popular as tabelas que tem dados fixos no sistema, e.g: estados, cidades, CNAES e etc.
cd /path/diretorio/onde/salvou/clone-migrations;
git pull upstream master;
git push origin master;
vendor/bin/phinx migrate
Caso tiver seed execute
vendor/bin/phinx seed:run
Viu como fica mais organizado, automatizado e versionado usando migrations/seeds com Phinx no sistema web com PHP? Com certeza, vale a pena utilizar o migrations/seeds com Phinx no sistema web com PHP.
Ok, como usar o migrations/seeds com Phinx?
Acesse o howto [1] e tenha a certeza que se perguntará, por que não pensei nisso antes? Logo vai começar a utilizar o migrations e seeds com Phinx.
Feito!
Nenhum comentário:
Postar um comentário