【问题标题】:Can a Perforce trigger script write to a temp file?Perforce 触发器脚本可以写入临时文件吗?
【发布时间】:2023-03-10 21:05:01
【问题描述】:

我想编写一个脚本(一个 perforce 触发器),它将在允许提交之前验证更改列表中文件的内容。 但是,我的脚本使用 Xsltproc 处理 XML,然后使用 Jing 进行验证。 我需要将间歇性输出保存到临时文件中 - 在为 perforce 编写更改内容触发器(服务器端)时可以这样做吗?我已阅读大量文档,但从未见过在运行触发脚本时创建临时文件的任何提及。 唯一的其他解决方法是将 Xsltproc 的输出通过管道传输到 Jing(我也不知道该怎么做)。

欢迎任何有经验的 XSLT 或 Perforce 用户的建议。谢谢。

顺便说一句,我正在使用 perl - 但我认为这不会让事情变得更加困难。

【问题讨论】:

    标签: perl xslt perforce jing


    【解决方案1】:

    当然,您可以创建临时文件。只需确保触发器有权写入您想要放置的位置,服务器驱动器上有足够的空间,您以避免冲突的方式命名文件(有一个用于创建临时文件名的 Perl 模块),然后你清理它(IIRC,正确的模块会为你做这件事)。

    但请记住,如果您的触发器需要很长时间来处理,那么它会对用户造成破坏,甚至可能会吓到用户。在这种情况下,最好使用守护进程来访问提交循环之外的文件并让用户修复它,而不是一开始就尝试阻止它。 (如果可以容忍坏文件,只要修复它们就行。这是你需要打的电话。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-10
      • 2012-10-27
      相关资源
      最近更新 更多