testing - 本地、测试和生产版本控制

标签 testing version-control versioning live

我是版本控制的新手,如果可能的话,我希望得到一些帮助。

我想知道,控制 3 个开发环境的最佳方式是:开发 > 测试 > 生产

  • 开发(本地主机环境)- 所有开发的工作都在上传之前在这里完成
    • 从事特定项目的每个人都应该有此文件夹的克隆(每个协作者及其用户,如果可能)并且用户的每个推送都将发送到此处,开发文件夹。
  • Testing - 应该是一个克隆文件夹,其中包含 Development 推送的数据,并使用 ftp 自动与子域 testing 同步,或者任何协议(protocol)。
  • Production 是发布稳定更新的实时站点。
    • 应该是Testing的克隆,还是推送时测试应该把数据上传到这里?

当用户推送的文件与其他用户 1 分钟前推送的文件不同时,冲突问题如何?当然可以有任务分离,每个人都做某些事情,但如果不是,如果 X 提交 submit.php 而 Y 也在 1 分钟前提交 submit.php 怎么办?

哪种版本控制软件最适合?

最佳答案

如果您将其翻译成 DVCS ( Distributed Version Control System ),则 like Git ,您的每个“文件夹”都可以是您的代码存储库的实际克隆。

这意味着你:

  • 将从您的本地开发推送到“development”仓库
  • 将从“开发”推送到“测试”(或者更好的是,有一个负责的“测试”任务'development' 并在检测到任何新提交时触发一些测试
  • 将从“testing”(如果测试正常)推送到生产

此外,您不会接受非 fast-forward update到远程仓库,这意味着任何冲突都将在推送之前首先在本地解决。

关于testing - 本地、测试和生产版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9215964/

相关文章:

testing - 在模拟器上运行 Telerik Test Studio 测试

database-design - 实现大型系统更改

git svn 工作流程 - 功能分支和 merge

java - 通过创建抽象类对其余服务进行版本控制?

http - 共享 api 响应的 whurl 替代方案

angular - 类型错误 : Cannot read property 'prod_id' of undefined

jenkins - 如何在具有一个或多个 SCM 的 Jenkins 工作流程中找到罪魁祸首或提交者

visual-studio-2008 - 如何阻止VS2008不必要地修改CSPROJ文件?

c# - MEF 依赖关系和版本控制

c# - 为应用程序开发版本编号