【问题标题】:How to handle versioning with Oracle Apex如何使用 Oracle Apex 处理版本控制
【发布时间】:2011-12-17 11:39:54
【问题描述】:

Oracle Apex 很棒。我遇到的最大问题是将它与源代码控制一起使用。通常在进行更改后,整个应用程序都会被导出,并且生成的 SQL 脚本会检查到源代码控制中。

问题在于,由于不清楚大部分导出的脚本在做什么,我必须将其视为本质上的二进制文件。这意味着来自多个源代码分支的更改无法合并在一起,这严重限制了它的实用性。

我听说有些人会导出每个页面并将它们单独放入源代码控制中。首先,这听起来很痛苦。其次,Apex 不允许您将页面导入到导出页面之外的任何应用程序中。所以很难让两个开发人员同时在他们自己的应用程序副本中工作。

有没有人找到通过源代码控制来处理 Apex 的好方法?我正在使用 Subversion,我怀疑它是否会有所作为。

【问题讨论】:

  • 我写了a small article,介绍了一种使用 APEX 进行源代码控制的工作方法,可能对这里感兴趣。主要思想是将开发转移到开发人员自己的工作站,并使用 Subversion 保持同步并合并所有不同的 APEX 应用程序版本。这使得源代码控制工作流看起来像this,也就是说,每个开发人员都有自己的 Oracle 数据库实例,安装在自己的工作站上。只要所有的工作空间和应用程序我

标签: oracle version-control oracle-apex


【解决方案1】:

我也处理过这个问题。问题的另一个方面是 Apex 与底层 SQL 数据库的联系如此紧密,以至于 SQL 中的任何更改都需要反映(换句话说,导出每个页面除了是一个巨大的痛苦之外还有其他问题)。实际上据我所知,当您导出页面时,共享组件也不会被导出。
我们通过导出整个应用程序并将其签入来解决这个问题。本质上,目前没有更好的方法来处理 APEX 中的版本控制。我还记得在Oracle APEX 论坛上看到有a way to split 导出的文件成组件部分,但我没有尝试过。

【讨论】:

  • 5 年后... Oracle 是否愿意解决这个问题?在 Apex 应用程序上进行协作是一件非常痛苦的事情。似乎 Apex 是由某个天才设计的,他意识到通过使用 Apex 创建应用程序可以拥有无​​限的工作保障:/
  • npmjs.com/package/apex-source-controlIt 声称它有一个使用 oracle apex 5.0 的解决方案。有时间我们会尝试整个过程..
【解决方案2】:

默认 Apex 导出应用程序到一个 sql 文件(Apex 导出)。但 Apex 也有 APEXExport Splitter,它将应用程序导出到单独的部分(css、模板等) 将这些部分提交到 svn 的好方法

1. Automating APEX Export for SVN

2. How to use source control with apex?

3. Apex-source-control

【讨论】:

    【解决方案3】:

    对于这个问题,我想出了一个我认为相当不错的解决方案。主要思想是将开发转移到开发人员自己的工作站,并使用 Subversion 保持同步并合并所有不同的 APEX 应用程序版本。

    这使得源代码管理工作流程如下所示:

    也就是说,每个开发人员都有自己的 Oracle 数据库实例,安装在自己的工作站上。 只要所有工作区和应用程序 ID 在工作站之间保持同步,合并 APEX 转储文件就非常容易 - 并且拥有源代码控制可以确保它们保持这种状态。

    我的团队已经使用这种方法将近两年了,效果非常好。

    基于这次经验,我写了a small article 详细说明了整个方法,希望它对其他团队有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-01
      • 2010-10-16
      相关资源
      最近更新 更多