Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Model Yii2迁移和Git分支_Model_Yii2_Crud_Database Migration_Git Branch - Fatal编程技术网

Model Yii2迁移和Git分支

Model Yii2迁移和Git分支,model,yii2,crud,database-migration,git-branch,Model,Yii2,Crud,Database Migration,Git Branch,关于Git分支和Yii2数据库迁移的一个简单问题。 在开发过程中,有时需要更改数据库。 然后进行新的迁移,运行模型生成器和CRUD 重新生成-覆盖所有控制器、模型和视图文件。 然后手动将旧代码合并到新代码中。一项乏味的任务,但至少我知道 我正在做。 但是,我有Git。我从未尝试过Git的分支/合并功能。 我可以创建一个新的分支吗,模型/CRUD生成的代码会用到它, 然后将该分支合并到master?这其中的逻辑步骤是什么?简单的回答是-是的,你可以 使用迁移,您可以轻松获得不同版本的数据库和代码。

关于Git分支和Yii2数据库迁移的一个简单问题。 在开发过程中,有时需要更改数据库。 然后进行新的迁移,运行模型生成器和CRUD 重新生成-覆盖所有控制器、模型和视图文件。 然后手动将旧代码合并到新代码中。一项乏味的任务,但至少我知道 我正在做。 但是,我有Git。我从未尝试过Git的分支/合并功能。 我可以创建一个新的分支吗,模型/CRUD生成的代码会用到它, 然后将该分支合并到master?这其中的逻辑步骤是什么?

简单的回答是-是的,你可以

使用迁移,您可以轻松获得不同版本的数据库和代码。开发新功能时,您需要创建一个新的分支,例如git checkout-b feature/new_table,并在其中工作

如果您需要一个新的数据库表,您可以这样做

$ ./yii migrate/create create_featured_table_table
在一个新文件中,您描述了创建表格的过程 然后把它取下来

如果up中的数据库状态有任何其他更改,则应在down函数中恢复这些更改

当迁移准备就绪时,您可以迁移/升级以应用更改并使用新表生成CRUD。所有更改仅存在于您的分支中

您可以将此分支合并到master中,而不会出现任何问题,因为您的数据库已经处于实际状态

但如果您需要签出主分支或其他分支而不合并更改,则应该首先迁移/向下迁移。通过这样做,您可以将数据库设置为前一个状态,所以它不受当前分支的影响


当您返回到功能分支时,再次迁移/向上迁移,数据库中的所有更改都将显示。

谢谢您的回答!是的,这似乎很有道理,我会试一试。