使用git版本控件进行PHP开发

时间:2012-06-10 15:18:56

标签: php mysql git apache version-control

是否有可能对PHP + MySQL + Apache项目进行版本控制?它是否可以跟踪数据库中的更改,例如,如果我添加了一个新表,我可以提交吗?

谢谢。

5 个答案:

答案 0 :(得分:4)

将数据库保留在版本控制中是不正常的。一些开发人员使用sqlite数据库进行开发,以便可以将其检入版本控制,但这可能会导致问题,因为sqlite语法可能与MySQL不同。

但是,您可以保留数据库架构和迁移源控件。查看mysql-php-migrations等项目即可开始使用。

有一个关于在http://net.tutsplus.com/tutorials/other/easy-version-control-with-git/使用PHP和Git的好教程 - 这应该可以帮助你入门。

答案 1 :(得分:3)

将Git用于PHP脚本是没有问题的,但跟踪对数据库的更改有点棘手。如果您有创建数据库结构的SQL脚本,那么这些脚本可以通过版本控制而没有任何问题。否则,您可以使用mysqldump在进行任何更改后将结构输出到SQL脚本:

mysqldump -d -h localhost -u root -pmypassword mydatabase > dumpfile.sql 

答案 2 :(得分:0)

您可以使用git来跟踪创建必要数据库结构的PHP脚本和SQL脚本。这些SQL脚本当然可以是版本控制的,并在任何给定的状态下重新创建数据库模式。

答案 3 :(得分:0)

Git本质上是SCM,意思是来源控制。 mysql中的表存储为二进制文件,因此不是很好。

但是,您可以存储创建这些表的SQL查询,允许您在需要时重新创建它们。

至于php,一切都会好的。

答案 4 :(得分:0)

我最近发布了一个非常简单的shell脚本,它有助于在版本控制下保持对MySQL数据库的更改。

https://github.com/stevecomrie/mysql-version-control