我需要将 Talend Open Studio 与 SVN 一起使用。我应该放在存储库中的文件夹是什么?
6 回答
好吧,“官方”的答案是升级到 Talend Integration Suite (TIS),其中包括 SVN 集成。使用共享存储库同步多个开发人员的活动大有帮助。
如果 TIS 不适合您,您可以通过将 Talend Open Studio (TOS) 的项目目录置于 SVN 控制下取得一些成功。这是与您的项目同名的“工作区”下的目录。您必须在此目录上手动执行所有 SVN 操作,例如提交和更新,例如使用 Tortoise(如果您在 Windows 上)。TOS可能可以使用这个项目,就好像它不在 SVN 下一样。我个人没有尝试过,建议改用 TIS。
强烈建议不要将 TOS 工作区放在 SVN 下,因为 CSV/SVN 本质上是基于文件的,而 TOS 工作区是基于目录的。您遭受工作区损坏的可能性非常高。
然而,我在 git 下取得了很好的结果,而不是(看看这里的想法)。我必须说这并不优雅,将整个工作区置于版本控制之下是对空间的巨大浪费(您将提交已编译的文件、日志、历史记录、临时......),但它是确保元数据完整性的唯一安全解决方案。
意识到!在 *<workspace_root>/.java* 子树中,您至少执行了一次项目中每个作业的外部库和类路径文件。这些路径是绝对的。这意味着,如果您计划在共享环境中使用受版本控制的工作区,团队中的任何人都必须将工作区放置在其本地文件系统中的绝对位置(即 c:/talend_git/workspace)。否则,您将在执行作业时得到一个类未找到异常。悲伤但真实。
我将解释我遵循的方法
- TOS IDE 需要的文件是
*.items
和*.properties
文件。您可以使用这些文件对您的 TOS 作业进行版本控制,因为它将保持作业相对于 Talend IDE 的准确状态。 - 因此,每当您完成 Talend 工作的某些增强时。使用“导出项目”选项将其导出并将它们置于 SVN 修订版下。生成的文件通常是 ZIP 存档文件。
- 每当您需要恢复到以前的版本时,您可以使用已保存的 ZIP 存档文件中的“导入项目”选项
这就是我处理 Talend 作业版本控制的方式。希望这可以帮助。
我认为有更好的机制可以用 git 做到这一点,而无需跟踪整个工作区。多个开发人员跟踪整个工作区会在二进制文件上产生合并冲突并且无法扩展。检查此处提到的步骤 - https://medium.com/@ganesh_m_r/version-control-talend-open-studio-project-b9523c48eb77。如果您遇到问题,请告诉我。
我遇到了类似的问题并写了一篇关于它的博客,请参阅将 Talend Open Studio 项目置于版本控制之下。基本上,您应该对整个工作区进行版本控制。
您可以导出其内容并将构建放入您的 SVN 中,而不是将整个项目存储在您的 SVN 中。(我们这样做,它适用于单人表演或纪律严明的团队。)
优点:
- 由于不会影响生成的源代码的微小更改,您无需进行提交。
- 您将节省大量空间。
- 您可以完全控制哪些内容放入 SVN,哪些没有。
- 如果您勾选“java 源代码”和“提取 zip 文件”复选框,您还将获得纯文本源代码。因此,您可以使用简单的差异工具来查看修订之间的确切变化。
缺点:
- 在开始任何工作(如果有任何更改)之前,您必须手动将新修订导入您的 Talend 工作室,并在提交之前手动将其导出。对于大型项目,这可能需要几分钟。
- 如果有人忘记这样做,你就有可能让他使用旧代码并提交它。(在提交之前对生成的源代码进行 diff review 时可以发现这个错误,但很少有人这样做。)