源代码控制(或版本控制)是跟踪和管理代码变更的做法。源代码控制管理 (SCM) 系统可以提供代码开发的运行历史记录,并有助于在合并来自多个源的贡献时解决冲突。
目录
- 本文目的
- 什么是容器,它们为什么对 IRIS 有意义
2.1 容器和镜像简介
2.2 为什么容器对开发者很有用
2.3 为什么 IRIS 可以很好地与 Docker 配合使用 - 先决条件
- 安装 InterSystems IRIS 镜像
4.1 使用 Docker Hub
4.2 拉取镜像 - 运行 InterSystems IRIS 镜像
5.1 启动 IRIS 容器
5.2 检查容器状态
5.3 在容器终端执行代码
5.4 访问 IRIS 管理门户
5.5 将容器连接到 VS Code
5.6 停止或移除容器
5.7 使用绑定挂载设置特定密码
5.8 使用持久化 %SYS 卷
5.8.1 可以使用持久化 %SYS 存储什么
5.8.2 如何启用持久化 %SYS - 使用 Docker Compose
6.1 Docker Compose 示例
6.2 运行 Docker Compose - 使用 Dockerfile 运行自定义源代码
7.1 Dockerfile 示例
7.2 Docker Compose 示例
7.3 了解层、镜像标记和构建与 运行时
7.4 源代码和初始化脚本
7.5 使用 Dockerfile 构建镜像
7.6 在容器化 IRIS 终端中运行指令 - 结语和未来计划
互操作性用户界面现在包括可以在所有互操作性产品中使用的 DTL 编辑器和生产配置应用程序的现代化用户体验。您可以在现代化视图与标准视图之间切换。所有其他互操作性屏幕仍采用标准用户界面。请注意,仅对这两个应用程序进行了更改,我们在下面确定了当前可用的功能。
要在升级前试用新屏幕,您可以点击这里,从我们的社区工具包网页中下载 2025.1 版:https://evaluation.intersystems.com/Eval/。请观看“学习服务”中的简短教程构建集成:一种新的用户体验,了解对这些屏幕进行的用户增强!
- 生产配置:在以下版本的生产配置中受支持:
- 创建/编辑/复制/删除主机
- 停止/启动主机
- 编辑生产设置
- 停止/启动生产
- 源代码控制集成:支持上述配置功能的源代码控制集成。
- 分屏 视图:用户可以直接从“生产配置”屏幕打开“规则编辑器”和“DTL 编辑器”,在分屏视图中查看和编辑产品中包含的规则和转换。
- 增强的筛选功能:使用顶部的搜索框,您可以搜索和筛选各种业务组件,包括多种类别、DTL 和子转换。 使用左侧边栏可以独立于主面板进行搜索,查看各种主机和类别中的搜索结果。
- 批量编辑主机类别:通过从生产配置中添加主机,您可以为生产添加新类别或编辑现有类别。
- 可展开路由器:可以展开路由器,内联查看所有规则、转换和连接。
我们已经有一段时间没有在开发者社区上发表关于嵌入式 Git 的文章了,我想借此机会更新一下今年我们完成的大量工作以及未来的工作计划。
背景信息
如果您要在 IRIS 上构建解决方案,并想要使用 Git,那就太棒了! 只需将 VSCode 与本地 Git 仓库结合使用,并将更改推送到服务器上即可,就是这么简单。
但在以下使用场景中该怎么办:
- 您与其他开发者在共享的远程开发环境中合作,并想要避免因同时编辑同一文件而影响彼此的工作
- 您使用位于管理门户中的编辑器来实现互操作性或业务智能,并希望对您的工作直接进行源代码控制,即使在本地容器中也希望如此
- 您仍在使用 Studio 处理一些任务并且/或偶尔会再次从 VSCode 跳转回 Studio;或者您的团队还没有完全接受 VSCode,一些团队成员仍想使用 Studio,而其他人在使用 VSCode
- 您同时在同一命名空间中处理多个独立的项目,例如使用 InterSystems Package Manager 定义的多个软件包,并想仅通过一个 isfs 编辑视图使用所有软件包(而不是在多个单独的项目中使用),同时在合适的本地 git 仓库中自动跟踪更改
在以上任何情况下,您都非常需要嵌入式源代码控制。
在数量众多、形形色色的 SQL 数据库市场中,InterSystems IRIS 作为一个超越 SQL 的平台脱颖而出,它提供无缝的多模型体验,支持丰富的开发范式。 特别是,先进的对象-关系引擎已经帮助组织为其数据密集型工作负载的每个方面使用了最适合的开发方式,例如在通过对象获取数据并同时通过 SQL 查询数据。 持久类与 SQL 表相对应,其属性与表中的各列相对应,可以使用用户定义的函数或存储过程轻松访问业务逻辑。 在这篇文章中,我们将深入了解表面之下的一点底层技术,讨论它可能如何影响您的开发和部署方式。 这是我们计划发展和改进的产品领域,因此请不要犹豫,在下面的评论区分享您的观点和体验。
保存存储定义 {Saving the Storage Definition}
编写全新的业务逻辑很容易,而且假如您有定义明确的 API 和规范,那么调整或扩展通常也很容易。 但是,当它不仅仅是业务逻辑,还涉及持久化数据时,从初始版本更改的任何内容都将需要能够妥善处理通过早期版本获取的数据。
在 InterSystems IRIS 上,数据和代码在一个高性能引擎中共存,没有您在其他 3GL 或 4GL 编程框架中可能看到的六个抽象层。 这意味着,在使用默认存储时,只有一个非常薄且透明的映射将您的类属性映射到每行数据Global节点的 $list 位置。