如何作为群组的一部分管理我的网站的开发和部署?

Ste*_*han 6 php mysql svn deployment

我一直在这里和那里读这个网站,看起来好像你们有一个很棒的社区.

至于我的背景,我是一名熟悉SQL,C++,Visual Basic和一些PHP的大学二年级学生.我暑期学期的一个项目涉及构建一个Web应用程序,允许用户通过Internet登录和安排特定的时间段.通常情况下,我是唯一一个从事项目工作的人,但在这种情况下,我将成为一个团队的一员.由于我们作为一个团队工作相对较新,我想为我的团队设置源代码控制,所以我们不是所有人都在共享驱动器上工作.此外,我想确保我们所有人都能够在托管我们网站实例的某种开发服务器上测试我们的更改.

我的实际问题是关于我们应该用来实现这个目标的工具集.作为一个群体,我们最熟悉PHP和MySQL,因此我们最终会将其用于代码和数据库.我过去使用过SVN供我个人使用,但我的小组成员对源代码控制不是很熟悉.我们可能会在项目管理和错误跟踪方面坚持像Excel一样简单的东西.理想情况下,我们希望这些工具是免费和开源的.

我们应该如何管理实际应用程序的构建?有没有我可以使用的方法,允许我们任何一个人将文件移动到我们的开发机器并跟踪谁做了它,所以我们最终不会覆盖彼此的变化?如果这是不可能的,我们中的一个人会编写一些脚本来处理它 - 但我想避免构建一个基本上只用于管理我们项目的软件应用程序.我预见的另一个问题是更新在开发机器上运行的数据库.我们可以使用任何标准化方法来管理我们四个人之间的SQL脚本吗?

我不希望这里有一个很长的啰嗦答案(毕竟,这是我们的项目!),但任何有用的提示将不胜感激.一旦我从假期回来,我期待着开始!谢谢!

cor*_*iKa 2

  1. 制定一个计划,说明如果只有你自己的话,你会如何做。
  2. 将计划分成大约需要 3-4 小时才能完成的任务。确保每项任务都有一个可衡量的目标。
  3. 分配任务。如果可能的话尝试对它们进行排序,以最大限度地提高开发人员的效率。
  4. 教他们使用源代码控制。向他们解释,几年后他们将使用这个(也许不是 svn,而是其他东西),所以他们不妨现在就学习如何使用。此外,这将有助于他们今后开展的每个小组项目。
  5. 制作用于构建和运行测试的脚本。还要编写您的部署脚本。这将确保您拥有与测试相同的机制,从而增加测试中发现的缺陷数量。(这与让它们存在但在测试中未发现相反。)
  6. 您提到更新开发数据库。经常转储开发数据库并实时刷新是完全合理的。您可能想要创建 3 个环境。开发、分阶段和生产。开发数据库将包含伪造的测试数据。登台数据库将有一个 live 的副本(可能是最近的,可能是几天内的)。当然,live 就是 live。
  7. Excel 作为“错误数据库”运行良好。考虑将其放入您操作和提交的源代码管理中。这将使您很好地了解随着时间的推移发生的情况,并且您可以更快地纠正错误。