Skip to content
赞助合作

本站右侧赞助位长期招租

联系我投放

LDE 与 SDE 协作:企业级多开发环境体系

在传统的企业 PLM 项目开发中,开发人员通常在同一个中心化测试服务器(共享数据库)上修改 ItemType、Form 和 Method 代码。这种粗放的做法会导致开发人员之间的更改相互覆盖,造成“代码打架”、系统频繁崩溃、调试困难等问题。

Aras 官方提倡的 DevOps 工程化实践 核心就是引入 LDE(本地开发环境)SDE(共享开发环境) 双环境体系,结合 Git 分支机制实现多人并行协作。


1. LDE 与 SDE 环境定义

1.1 本地开发环境 (Local Development Environment - LDE)

  • 宿主:每个开发人员的个人工作电脑。
  • 物理构成:本地安装 IIS、SQL Server 开发者版、Aras Innovator Server 实例、以及本地 Vault。
  • 作用:完全隔离的个人沙箱。开发人员可以任意修改元数据、编写 Method 并附加调试器(debugger),而不会影响任何其他队友。

1.2 共享开发环境 (Shared Development Environment - SDE)

  • 宿主:团队共用的中央服务器或云主机。
  • 物理构成:公共数据库、公共 Web 容器。
  • 作用:团队集成测试与自动化流水线运行环境。它是团队代码的“第一落地源”,只有通过代码审查的成果才能部署到 SDE。

2. LDE 本地开发沙箱搭建步骤

搭建一个合格的本地 LDE 开发沙箱,需要确保各项基础设施版本与团队 Baseline 一致:

  1. 设置 Powershell 执行策略
    • 打开管理员权限的 Powershell,允许运行配置脚本:
      powershell
      Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
  2. 安装 .NET SDK 及微服务运行时
    • 安装对应的 .NET Framework 运行时与 .NET 6.0/8.0 (Windows Server Hosting Bundle),确保 IIS 能够正确托管 Aras OData 路由微服务。
  3. 配置本地 SQL Server
    • 安装 SQL Server 实例,并确保其默认的排序规则(Collation)设为 SQL_Latin1_General_CP1_CI_AS
  4. 获取环境基线 (Baseline)
    • 从公司 Git 团队主仓库下载当前的基线部署包(包含代码树 zip 和数据库备份 bak)。
    • 将数据库还原到本地,并配置 IIS 将虚拟目录指向本地解包后的代码树。

3. 团队协作 Git 分支开发流

在双环境体系下,团队日常协作严格遵循以下 Git 分支合并模型:

3.1 核心流程走过 (Fork & Clone)

  1. 建立派生仓库 (Fork):开发者在 Azure DevOps 或 GitHub 上,从“团队主仓库(Team Repo)”派生出自己的“个人隔离仓库(Developer's Fork)”。
  2. 本地克隆 (Clone):开发者将自己 Fork 的仓库 Clone 到本地 LDE,创建功能开发分支(如 feature/part-customization)。
  3. 本地开发调试:在 LDE 沙箱中修改元数据和 Method 代码,并通过 VS 进行本地集成测试(TAF)。

3.2 成果提交与代码审查 (PR & Code Review)

  1. 包导出与代码跟踪:开发完成后,使用 Aras 导出工具将元数据修改导出为本地 XML 包(物理文件),连同 Method 代码一起提交 commit。
  2. 同步更新 (Fetch & Rebase):在推送到云端前,开发者必须从团队主仓拉取最新的变更,并在本地分支进行 rebase。如果有元数据冲突(如两个人都修改了同一个 ItemType 属性),在本地 LDE 解决冲突并验证。
  3. 推送与 PR 发起:将本地分支推送到个人云端 Fork 仓库,然后向团队主仓的 development 分支发起一个 Pull Request (PR)
  4. 同级评审 (Code Review)
    • 团队资深开发人员对 PR 进行审查,检查:
      • 是否遵循命名规范(如 Package 命名必须带公司前缀)。
      • C# 服务端 Method 是否存在 SQL 注入风险。
      • 是否包含对应的单元测试。
    • 自动化流水线(CI Pipeline)在后台静默运行,拉起集成测试环境进行自动构建校验。
  5. Merge 合并与 SDE 自动部署:评审通过且 CI 绿灯后,代码合并进主仓,CI 流水线自动将新成果推送到 SDE(共享开发环境)供业务人员验证。

本站内容仅供学习与参考

本站总访问量