Talend Open studio 免费版与 Git 的问题

问题描述 投票:0回答:1

我目前正在使用免费版本的 Talend Open Studio for Data Integration 从事 talend 工作。 Pb:我从 Gitlab 克隆了存储库,在 talend 中打开它,做了一些修改并保存。 当我想在使用命令“git status”将其推送到存储库之前跟踪修改时,没有任何跟踪:

'在分行主干道上 您的分支已更新为“origin/main”。

无需提交任何内容,工作树干净'

尽管 git 已成功跟踪 Talend 本身在我的本地计算机上创建的每个新作业,但我们如何跟踪 git 克隆的现有作业的 talend 作业修改

git gitlab talend
1个回答
0
投票

我们发现 Talend Open Source 中内置的一些东西给 Git 甚至多个开发人员带来了挑战。这些都是相关的,所以让我带您了解一下。

首先,我们使用单个用户配置文件进行 Talend 开发。为此,我们按住 Shift 键并右键单击该程序,然后选择以用户身份运行(以管理员身份运行会导致模型严重损坏,因此不要这样做)。我们有一个专门用于 Talend 的服务用户,我们都用它来实现此目的。模型中一次仍然只有一个用户,但至少我们都可以使用相同的模型。

注意:我们尝试让每个用户在自己的开发环境中工作,并使用 Git 来回传递更改。那惨败了。模型不断被损坏,并且由于单个微小更改而导致的差异很大,因为打开的任何内容都标记有当前用户和似乎为每个会话生成的内部指针。以单个用户身份运行 Talend 解决了这个问题,通过将 Talend 环境放置在数据中心的远程服务器上,我们能够在多个开发人员之间共享 Talend 安装,尽管一次只能与一个用户共享。

Git 现在如何解决这个问题?我们使用 Git 来备份对模型的更改。该过程是从 Talend 导出到工作库、提交、推送到远程存储库(对我们来说位于 Bitbucket 上),但 Gitlab 也应该可以工作。以适用于导出的方式克隆存储库(至少在使用 Windows 时)我必须使用 runas。程序如下:

@if -%1-==-- echo Syntax error! & echo use TRUN "git command" & goto :OUT
runas /user:serviceUser /env /savecred %1
:OUT

这基本上会运行我作为服务用户在 trun 之后输入的任何内容,并保存凭据,这样我们就不必不断登录来执行此操作。任何可以创建库或文件的东西都需要这个 trun 命令。所以 git clone 或 git pull 。

“git clone”或“git pull”填充工作副本,但 Talend 无法直接访问该副本。您需要首先从 Talend 中的工作副本导入模型才能获得任何更改。幸运的是,由于每个人都对给定项目使用相同的 Talend 安装,因此没有理由导入,因为更改已经存在。

Git 确实增加了一些额外的复杂性。提交和推送过程使用我们的个人用户 ID 而不是服务用户,因此每个开发人员都必须拥有自己的本地存储库和工作副本。如果另一个用户是最后一个通过提交和推送对模型进行更改的用户,则您必须在导出更改并执行提交和推送之前使用“git pull”从远程刷新您自己的本地存储库和工作副本。

这一切看起来工作量很大,但是一旦你习惯了,它并不比使用 git 进行正常开发多多少。您只需执行额外的导入/导出步骤,并且大部分只是导出。

© www.soinside.com 2019 - 2024. All rights reserved.