git - Swiper 插件内部字段丢失

标签 git xpages domino-designer-eclipse

我刚刚安装了 Swiper Plugin在我的 Domino Designer FP7 上,经过一些测试(也许)我发现了一个错误。

不幸的是,如果您在分支之间切换,$DesignerVersion$$ScriptName 等内部字段会丢失!

这里是我的测试场景:

  1. 创建一个表单(form1.form)
  2. master 分支进行初始提交
  3. 创建一个额外的分支,例如开发
  4. develop 分支中对 form1.form 做一些修改
  5. 提交此更改
  6. 切换回master分支

在这一步之后,内部字段(上面提到的)丢失了 :(

最佳答案

Swiper 决定“刷掉”的属性和元素是通过使用 xslt 文件来控制的。

默认的 xslt 文件确实选择了 DesignerVersion$$ScriptName 来刷。

DesignerVersion 默认是刷过的,因为当你升级 domino designer 时,这会导致很多 merge 冲突,或者如果你的一位同事决定安装一个你没有完全安装的修复包突然每个文件都会再次发生冲突,需要解决。

虽然可能有人认为每个版本的导入/导出行为可能不同,但听到 IBM 在过去几年中对 DXL 导入/导出做出任何更改,我会持怀疑态度。

关于 $$ScriptName,老实说,我不记得为什么我要把它包括在内,但它一定让我很烦。它对我没有造成任何问题,但话又说回来,我并没有做很多经典的 NSF 开发,所以在这样做时可能确实会造成问题。

提供您自己的自定义 xslt 过滤器:

如果您不希望这些“刷过”,那么您可以提供自定义的 xslt 文件 制作默认文件的副本 org.openntf.swiper/src/org/openntf/swiper/action/DXLClean.xsl

然后评论或删除与设计器版本相关的条目(有多个)

<xsl:template match="//n:form/@replicaid"/>
<xsl:template match="//n:form/@version"/>
<!--<xsl:template match="//n:form/@designerversion"/>-->

<xsl:template match="//n:database/@replicaid"/>
<xsl:template match="//n:database/@version"/>
<!--<xsl:template match="//n:database/@designerversion"/>-->
.... and so on make sure you do all of them

然后注释掉/删除$$ScriptName

<!-- Ignore the DesignerVersion Item  and this random FileModDT one -->
<xsl:template match="//n:item[@name='$DesignerVersion']"/>
<!--<xsl:template match="//n:item[@name='$$ScriptName']"/>-->
<xsl:template match="//n:item[@name='$ScriptLib_error']"/>
<xsl:template match="//n:imageresource/n:item[@name='$FileModDT']"/>
<xsl:template match="//n:imageresource/n:item[@name='$EditFilePath']"/>

将其另存为 .xsl 文件 然后在 Designer 中转到文件 -> 首选项 -> Swiper 在“自定义 XSLT 过滤器”下,浏览到您的文件的位置,然后单击应用/确定。

当文件从 NSF 导出到 ODP 时,这些规则将在下次运行 swiper 时生效。因此,您可能需要强制保存文件,或故意“滑动”文件以查看新结果。

关于git - Swiper 插件内部字段丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41698414/

相关文章:

Git:如何将所有内容完全恢复到先前提交的状态?

git - 删除特定日期的 GitHub 提交历史记录

javascript - 有没有更好的方法将多值数据显示为列?

xpages - Xpage 认证

xpages - 使用 XPage 在新选项卡中打开链接时运气不佳

lotus-domino - Domino 项目中 Java 代码的源代码控制启用

git - 如何配置 TeamCity 构建代理以使用 git 和 git ://protocol over a SOCKS proxy?

git - 将 master merge 到 dev 分支的正确方法

xpages - XPage 中的颜色字段

java - XPage java 类导致 com.ibm.designer.domino.napi.NotesAPIException