2017-06-05 62 views
1

我对Informatica相对比较陌生,但从我所了解的情况来看,由于Informatica专有的XML文件结构,Informatica似乎不像第三方版本控制系统那样运行良好。不幸的是,由于我的要求,默认的Informatica VCS不适合我。有没有一种方法可以通过在我的其他文件(例如shell脚本)上支持经典的Git操作来对版本控制文件系统进行版本控制,但只允许在Informatica XML文件上完全覆盖?Informatica&Git:版本控制

+2

你可以告诉git某些文件被认为是二进制的,即使它们看起来是文本的。 Google为“.gitattributes”。 –

+0

为什么你认为XML在Git中不会很好? XML是纯文本,因此Git应该能够很好地跟踪它,唯一的问题是我可以看到,如果其他用户将同时更新,您可能难以合并。你真的把你的*整个*文件系统放入Git仓库吗?对于XML文件,“允许完全覆盖”是什么意思? –

+1

@ScottWeldon是的,XML文件通常可以很好地与Git协同工作。但是,由于其专有性质,此XML文件不能合并。该文件可以合并,但是,生成的XML文件在Informatica中无法正常工作。这就是为什么我正在寻找一个将我的XML文件包含在Git中的解决方案,但是要限制这些文件的合并并鼓励完整的替换。提到的二进制选项Lasse似乎是我正在寻找的东西,但我仍然对想法持开放态度。我希望这可以帮到你。 –

回答

2

除了Lasse提到的使用.gitattributes的方式外,还可以为指定某些文件(xml文件)的合并stratgeies

假设您想保留的版本合并过程中不更换,可以设置如下:

  1. .gitattribute,添加内容filename merge=ours
  2. 定义我们的合并策略git config --global merge.ours.driver true

现在,当你做一个合并,git会保留文件名为当前版本。

更多细节,你可以参考this article的最后一部分(合并策略)。

+0

非常有趣,这可能实际上非常有帮助。 –