![99526c22f80bd574e2ecef054f548caa.png](https://i-blog.csdnimg.cn/blog_migrate/feb27e8e755b4e55006348026587af2d.png)
导语
本指南将教您如何执行以下操作,配置Mendix应用程序项目,使其与您自己的(本地)版本控制系统一起工作。对于版本控制,Mendix使用Subversion系统(也称为SVN)。本指南不会描述如何从头开始设置SVN服务器;通常这将由组织的IT部门负责。
01
简介
开发Mendix应用程序时,对这些应用程序的更改存储在版本控制系统中。这个系统叫做Team Server,是Mendix平台的一部分。这意味着应用程序的文件存储在Mendix联网环境中。
虽然这是几乎所有Mendix开发人员推荐的工作方式,但您可能更喜欢将应用程序的文件存储在由您自己的组织控制的系统中。
如果使用本地版本控制服务器,则无法使用Mendix Studio和Web版本的Studio进行协作开发。只有使用Mendix Team Server时,Studio和Studio Pro之间的协作开发才高效。Studio Pro本身自带的版本控制功能不受影响。
02
先决条件
在开始本指南之前,请确保您已完成以下先决条件:
• 有SVN相关知识
• 有权访问一个SVN服务器,并拥有允许您访问该SVN服务器的凭据(用户名和密码)
• 知道SVN服务器的位置-通常这是一个类似于internet
URL的地址(例如,
https://svn.example.com:9876/repos/myapp)
03
Repositories
Subversion使用存储库来存储版本控制的应用程序项目的所有数据。每个Subversion服务器可以包含许多不同的存储库。
对于如何使用的目的,有两个关于存储库的要点需要了解。
首先,Mendix要求您将每个Mendix应用程序存储在单独的存储库中。不可能将多个Mendix应用程序放入一个存储库中。
其次,在将应用程序项目上传到存储库时,Mendix要求存储库为空(除了推荐的SVN布局,如推荐的存储库布局中所述)。具体地说,这意味着存储库应该只包含三个空文件夹,分别称为branchs、tags和trunk。
通常,存储库是由SVN服务器的管理员创建和维护的。有关存储库的更多详细信息,请参阅存储库管理。
在本操作指南的以下部分中,假设您的应用程序具有可用的存储库。
04
SVN版本
Mendix Studio Pro有一个(内置的)Subversion客户端,它使用SVN工作副本格式的1.9版。这个客户机应该与SVN服务器的任何1.x版本兼容,因此您也可以使用1.6.x或1.9.x SVN服务器。
Mendix Studio Pro使用Subversion 1.9工作副本。Mendix Desktop Modeler的早期版本使用Subversion1.7工作副本。这些工作副本版本不兼容。
这意味着,如果您使用单独的SVN客户端(例如TortoiseSVN)来处理您的Mendix应用程序项目,则必须始终使用与您的应用程序模型匹配的版本。如果使用最新版本的TortoiseSVN打开Mendix版本7.x或6.x中的本地模型,则无法再在Mendix中打开它。
05
准备私有的SVN服务器
为了方便我们在coding上的SVN做演示,你也可以选择其他平台的SVN。最终目的是获取到SVN的URL地址。
• 在Coding上新建一个SVN项目(任意的SVN都可以)
![c3f4edcc8ad6a8889b61ac63a9257aac.png](https://i-blog.csdnimg.cn/blog_migrate/f7fc5fab879e127ce55c38b76d7d257b.png)
• SVN仓库推荐布局如下(tags, branches, trunk)
![795fb46358356b1915127a75a6e2f807.png](https://i-blog.csdnimg.cn/blog_migrate/5c838da2915e7dcb3caaec19de091f9a.png)
• 获取SVN仓库地址
![75d7e82682fc03dd859fc8409b0f2d5f.png](https://i-blog.csdnimg.cn/blog_migrate/fd8308f4d61d5250e088903860fb89fb.png)
SVN URL :
https://svn.coding.net/mendix-siemens/private-svn-mendix/private-svn-mendix-test
06
创建应用程序以存储在本地SVN服务器中
要创建要存储在本地SVN服务器中的新应用,必须通过以下步骤从Studio Pro创建应用:
• 单击“My Apps”页面上的“New App”。
• 在“App Settings”对话框中,单击“Enable online services”的“NO”。
• 在Studio Pro的顶部菜单中,转到“Edit”>“Preferences”>“ Advanced”,并确保选中了“Enable private version control ”框。
![07a8c34b6fa9689c2ace025c31a65c98.png](https://i-blog.csdnimg.cn/blog_migrate/68236e2d74c269df63a1f9c93cfc9fe7.png)
![01fc125cddc58490826430542b6ac44e.png](https://i-blog.csdnimg.cn/blog_migrate/5f15566943606a2a9c0320e956abc757.png)
• 在顶部菜单中,选择“Version Control”>“Upload to Version Control Server”。
在“Upload to Version Control Server”对话框中,选择“Private server”。
![1cae32db15ef223db69b09e2956a08d3.png](https://i-blog.csdnimg.cn/blog_migrate/9aafb202af34f17ef30585a48d24f483.png)
• 在App repository address字段中,输入SVN服务器的地址。此地址必须包含要用于应用程序的存储库的名称(例如,
https://svn.coding.net/mendix-siemens/private-svn-mendix/private-svn-mendix-test,
或者https://svn.example.com:9876/repos/myapp这种形式的)。
![3d2086ef34ef162d280a71aac59db46e.png](https://i-blog.csdnimg.cn/blog_migrate/f2898771e5d3520c49c7c43bb931d9f0.png)
• 单击“OK”连接到服务器。
07
从Mendix Team Server移动到SVN服务器
为了将应用程序从Mendix Team Server移动到专用SVN服务器,我们将使用在Developer Portal中创建一个新应用程序的场景,其中将自动创建Team Server项目。
为了创建要存储在本地SVN服务器中的应用程序,这是一个不推荐使用的工作流。
• 单击Create App in the Developer Portal.”,选择其中一个模板即可。
![b6519055ae51fcc4d1c5b3fe5a83f6f3.png](https://i-blog.csdnimg.cn/blog_migrate/4f64430e91e25870066c139f3c482d64.png)
• 创建应用程序后,单击“编辑应用程序”旁边的箭头,选择“在Mendix Studio Pro中编辑”,然后在相关的Studio Pro版本中打开应用程序项目。您需要在Studio Pro中打开应用程序项目才能将其下载到本地计算机。
• 默认情况下,应用程序项目包含指向Mendix Team Server位置的链接。要将其替换为您自己的SVN服务器的地址,请在Mendix支持门户中创建一个记录单,指定您的应用程序项目和SVN服务器的地址。此地址必须包含要用于应用程序的存储库的名称(例如,https://svn.example.com:9876/repos/myapp)。这将允许Mendix支持更改应用程序的URL。
• 在继续该过程之前,请等待来自Mendix支持部门的确认。
• 关闭Studio Pro的所有实例后,打开本地存储应用程序项目的文件夹。
• 删除.svn和.mendix缓存文件夹(请注意,这些文件夹可能是隐藏的,在这种情况下,您需要在文件资源管理器中启用该选项使其可见)。通过删除这些文件夹,将删除对Mendix Team Server的引用。现在,你的应用程序可以上传到你自己的SVN服务器了。
![906aec4c20e70acb9938abc467364d85.png](https://i-blog.csdnimg.cn/blog_migrate/02ab2af0e4be9bf38c89370c43ad3200.png)
• 双击项目文件夹中的.mpr文件,在Studio Pro中再次打开应用程序项目(例如,如果您的应用程序名为FormsApp,则此文件将具有以下名称FormsApp.mpr). 或者,您可以启动Studio Pro,单击“我的应用程序”>“打开应用程序”,然后浏览到上述本地.mpr文件以打开应用程序项目。
![5d3b27cd2ea4457fe2c169ab99a075b8.png](https://i-blog.csdnimg.cn/blog_migrate/0a7befc08a7ce681ba2c501eae7b3818.png)
![bdda0483001f92afd707b11c30f1c56d.png](https://i-blog.csdnimg.cn/blog_migrate/46678a63fd7a004284c812d46755c2b5.png)
• 在Studio Pro中打开应用程序项目后,转到顶部菜单,选择“Edit > Preferences > Advanced”。并确保选中了“Enable private version control”框。
• 在顶部菜单中,选择“Version Control > Upload to Version Control Server”。
• 在“ Upload to Version Control Server”对话框中,选择“Private server”。
• 在应用程序存储库地址字段中,输入SVN服务器的地址。此地址必须包含要用于应用程序的存储库的名称(例如,
https://svn.example.com:9876/repos/myapp)。
![3d2086ef34ef162d280a71aac59db46e.png](https://i-blog.csdnimg.cn/blog_migrate/f2898771e5d3520c49c7c43bb931d9f0.png)
• 单击“OK”连接到服务器。
![23550e985e48d78902c579cbc95128a4.png](https://i-blog.csdnimg.cn/blog_migrate/9abe85e8d77333b942849bc8cd457925.png)
![37889cb54e1462e5518c1a4d21719d44.png](https://i-blog.csdnimg.cn/blog_migrate/e7fc4cc00314b96207e21a71af42c9de.png)
![a1a72a1cce2d7f63d58064367d56f542.png](https://i-blog.csdnimg.cn/blog_migrate/234cc32292f2c066a4d20c050ed71877.png)
• 查看SVN仓库代码
![fa2bbb25b0a8933d8e3777d9b74521eb.png](https://i-blog.csdnimg.cn/blog_migrate/1d5fd9feb41c58bdade862d4e6ae4861.png)
• 协同开发测试
当多人协同开发时,查看是否有相关的代码冲突问题,主要观察Mendix Studio在协同开发时,对一些冲突的提示是否健全,能否对客户带来明显的提示。当多人在同一个页面的同一个组件进行修改,Mendix Studio智能地给用户提示错误的关键信息。
![6646f2cd2260da1b404c20a0d1ed786b.png](https://i-blog.csdnimg.cn/blog_migrate/324425fe556a706ff957b26ebfe678aa.png)
![e0229ed357c36cf35c03d53a1967953b.png](https://i-blog.csdnimg.cn/blog_migrate/a1c67dee8cbdc9d105d31043912acf81.png)
![4b5b3822f405491d498beb7354a351a6.png](https://i-blog.csdnimg.cn/blog_migrate/a973bf7ba12538a34a84e9ab6c016b8c.png)
![b17d7600bfc0e0386e885b8141ecc1ea.png](https://i-blog.csdnimg.cn/blog_migrate/de1852f7ac9484dbfb2f4d3e2fd3da1e.png)
效果很明显,智能提示相关信息。
更多Mendix信息,请访问以下链接:
Mendix官网:
https://www.mendix.com/demos/
Mendix行业解决方案:
https://solutions.mendix.com/
Mendix平台指南:
https://www.mendix.com/evaluation-guide/
Mendix动画展示:
https://www.mendix.com/demos/
Mendix课程学习: https://gettingstarted.mendixcloud.com/link/home
优酷课程学习:
https://i.youku.com/mendix
●往期推荐 ●
● Mendix基于腾讯云部署最佳实践
● Mendix结合腾讯TSF实现微服务治理
● 建设企业数据中台最佳选择-Mendix
● Mendix教你10分钟快速创建企业级应用
● Mendix应用部署SAP Cloud最佳实践
● Mendix部署亚马逊AWS容器服务最佳实践
● Mendix应用快速部署阿里云容器服务
● Mendix 如何因应紧急的需求而快速开发App
觉得内容还不错的话,给我点个“在看”呗
![51e3041f65b7750614f0947aa515acab.gif](https://i-blog.csdnimg.cn/blog_migrate/7eff5c13c97a4ad43407e82f8c15a457.gif)
![85edac318ad961febcd0962c394f182a.gif](https://i-blog.csdnimg.cn/blog_migrate/8405122920018f824490345b984c435c.gif)