标签: workflow

如何管理同一条记录的多个版本

我正在为一家公司做短期合同工作,该公司试图为其数据库记录实施签入/签出类型的工作流程。

这是它应该如何工作的......

  1. 用户在应用程序中创建一个新实体。除了主实体表之外,还将填充大约 20 个相关表。
  2. 创建实体后,用户会将其标记为主实体。
  3. 另一个用户只能通过“签出”实体来对主实体进行更改。多个用户可以同时结帐该实体。
  4. 一旦用户对实体进行了所有必要的更改,他们就会将其置于“需要批准”状态。
  5. 授权用户审查实体后,他们可以将其提升为主实体,这会将原始记录置于逻辑删除状态。

他们当前完成“签出”的方式是复制所有表中的实体记录。主键包括 EntityID + EntityDate,因此它们使用相同的 EntityID 和更新的 EntityDate 复制所有相关表中的实体记录,并为其赋予“已签出”状态。当记录进入下一个状态(需要批准)时,重复会再次发生。最终它将被提升为master,此时最终记录被标记为master,而原始master被标记为死亡。

这个设计对我来说似乎很可怕,但我理解他们为什么这样做。当有人从应用程序内查找实体时,他们需要查看该实体的所有当前版本。这是实现这一目标的一种非常简单的方法。但它们在同一个表中多次表示同一实体的事实并不适合我,而且它们复制每条数据而不是仅存储增量的事实也不适合我。

我很想听听您对设计的反应,无论是积极的还是消极的。

我也将不胜感激您可以向我提供的任何资源,这些资源可能有助于了解其他人如何实现这种机制。

谢谢!
达尔维斯

sql workflow

3
推荐指数
1
解决办法
1336
查看次数

我们可以在 git-flow 中将 develop 分支合并到 Feature 分支吗?

  1. 我们可以在 git-flow 中将develop 分支合并到feature 分支中吗?

  2. 如下图所示,有 2 个功能分支(A(红色)和B(蓝色)),由两个开发人员分配。当B需要从一些代码A,将它允许A推动发展下去编码,然后B从发展拔呢?

  3. 一个合并开发分支,没有合并而是覆盖,为什么,以及如何解决它?

git merge workflow github git-flow

3
推荐指数
1
解决办法
7278
查看次数

失明如何影响您的编码风格?

盲人如何编程的问题已经被一遍又一遍地回答了,但我找不到任何关于盲人和使用屏幕阅读器或盲文显示器如何影响你的编码风格的信息。

你能区分盲人创建的代码和其他代码吗?

失明是否会导致您以不同的方式思考问题并寻找其他解决方案?

workflow development-environment accessibility

3
推荐指数
2
解决办法
663
查看次数

适用于所有开发人员的 WordPress 多站点和单一数据库

我正在为 WordPress 多站点设置规划开发团队工作流程。我们选择多站点是因为我们想要限制更新/升级过程,并且因为我们的绝大多数客户在后端具有相同的网站结构/要求。对于前端,我们使用“vanilla”主题,其中包含我们的 css/js 框架和主要设置、帖子类型、选项等,我们将基于我们的 vanilla 主题构建所有网站,并为每个主题扩展它客户端通过子主题。我决定将所有内容都置于版本控制 (Git) 之下,甚至是 WordPress 核心文件。

就我们当前的开发环境而言:我们一直在使用集中式 Web 服务器,而不是 LAMP 堆栈或 VVV/Docker 设置,每个开发人员都通过使用单独的 vhost 每个映射到其本地存储库的 url 访问他的项目项目(现场)。因此,在处理 projectA 时,John 的 url 是http://john.projectA.dev,而 Jack 的 url 是http://jack.projectA.dev

最初为所有开发人员使用相同的数据库似乎是确保数据一致性、通用设置等的“合乎逻辑”的方式,但我还没有能够结束。由于 WordPress 在 wp_options 表中存储 siteurl 和 homeurl URL 的方式,我未能找到一种方法将 John 映射到他将通过 URL 工作的站点,或者允许所有开发人员访问公共多站点的 wp- admin 默认为用户的 URL 之一(即http://bob.wpmulisite.dev,其中 Bob 是最初设置多站点环境的开发人员。我尝试通过在每个开发人员的自定义 wp-configs 中定义它们来覆盖 url,但是WP_HOME 和 WP_SITEURL 在 WP 多站点中被忽略了。

我不喜欢必须使用 db 转储、替换转储中的 url 并将其导入到每个用户的数据库中的想法,因为我担心该过程很快会导致问题并且会造成过多的合并,差异-ing 等 但是,我可能是错的,我绝对愿意接受任何建议。

我已经在上面概述了我的主要问题,如果您觉得不清楚,我会很乐意重新表述。在这一点上,我不太确定您可能感兴趣的详细程度,所以请问我,我会深入研究。

database wordpress workflow multisite

3
推荐指数
1
解决办法
1179
查看次数

Rollup & Plugins 能否将大多数遗留库转换为 es6 模块?

我们团队的项目内部完全是es6模块(ESM),但是有依赖项还没有制作esm版本。

我们创建了各种解决方案,但它们绝对不是现代的主流解决方案。我指的是将旧格式转换为 esm 的 Rollup 工作流程。或同等学历。

那么问题来了:现在是否有 Rollup 转换器/插件可以让我们将所有或至少大多数旧格式捆绑到 esm 中?即,将 commonJS、iife、umd、amd(和其他)库格式转换为 esm,或者至少可以捆绑到 esm 包中?

workflow plugins rollupjs es6-modules

3
推荐指数
1
解决办法
1616
查看次数

如何在 Jira 中添加具有新状态的列?

我已经修改了面板并在 Jira 中添加了一个列,但它没有状态并且没有显示在面板上,如何修复并使新列显示在面板上并正常工作?

workflow ticket-system jira

3
推荐指数
1
解决办法
4113
查看次数

Github 操作未上传工件

我在从工作流中将工件上传到 github 时遇到问题。

这是我的 yaml 文件:


on:
  push:
      branches:
      - master

jobs:
    build:
      name: build and test
      runs-on: ubuntu-latest

      steps:
        - uses: actions/checkout@v1
        - name: Install robotframework and dependencies
          run: |
            pip install selenium
            pip install robotframework
            pip install robotframework-seleniumlibrary
            pip install robotframework-imaplibrary
            pip install robotframework-httplibrary
            pip install robotframework-requests
        - name: Download and install chromedriver
          run: |
            wget http://chromedriver.storage.googleapis.com/77.0.3865.10/chromedriver_linux64.zip
            sudo unzip chromedriver_linux64.zip -d /usr/local/bin
            export CHROME_BIN=chromium-browser
        - name: Run robot tests
          run: |
            cd robot/tests
            python -m robot -i ready …
Run Code Online (Sandbox Code Playgroud)

workflow artifacts github-actions

3
推荐指数
1
解决办法
2304
查看次数

工作流引擎和事件流框架是编排层的替代品吗?

我要实现文档管理服务为业务流程层底层服务,如存储,分析,反病毒扫描等之间的编排要求是使层灵活,针对不同类型的文档,不同的流可以快速实施
的一个方法是将其建模为事件驱动系统,并使用 Apache Flink 等框架在事件上实现处理管道。
另一种思考方式是——工作流。将此设计为在 Apache Airflow 或 Uber Cadence 等工作流引擎上运行的工作流。
什么是更好的方法。

architecture workflow event-driven-design system-design

3
推荐指数
1
解决办法
1010
查看次数

我不了解工作流、工作流自动化或工作流编排

为什么我们需要像 Uber 的 Cadence、Camunda 或 Activiti 这样的特殊软件?如果它只是一系列任务,那为什么我们不能直接编码呢?我试图阅读 Camunda 和 Cadence 的文档,但无法深入了解。我公司想用。考虑过它的高级开发人员无法/似乎不会解释为什么或在哪里使用它。

而且我发现他们设置工作流程的代码/方式非常不直观。有人请帮忙。

该项目是使用 Java 和 Spring Boot 开发的。

architecture workflow activiti camunda cadence-workflow

3
推荐指数
2
解决办法
1334
查看次数

如何从子目录运行多个 GitHub Actions 工作流

我有 3 个目录 ./github/workflows/

  • 短绒
  • 功能测试
  • 单元测试

在每个目录中,我都有多个工作流.yml文件,例如linters/codeQuality.yml

我的问题是,当发出拉取请求时,只会执行 root 中的工作流文件,而不是这些目录中的工作流文件。

我怎么解决这个问题?

workflow github github-actions

3
推荐指数
1
解决办法
1967
查看次数