Perforce允许人们签入未更改的文件.为什么任何版本控制系统都允许这种情况超出我的意见,但这是另一个问题的主题.我想创建一个拒绝提交未更改文件的触发器.但是,我没有使用Perforce触发器的经验.根据我的阅读,我猜这将是一个"更改内容"触发器,因为提交的文件必须与他们即将替换的相应头版本进行区分.我需要迭代传入的文件,并确保它们确实已经发生了变化.问题是,我不知道如何去做.
拥有Perforce触发体验的任何人都能提供一个例子,或者至少指出我正确的方向吗?
在最新版本的perforce中,允许客户端设置阻止提交未更改的文件:
SubmitOptions: Flags to change submit behaviour. submitunchanged All open files are submitted submitunchanged+reopen (default). revertunchanged Files that have content or type revertunchanged+reopen changes are submitted. Unchanged files are reverted. leaveunchanged Files that have content or type leaveunchanged+reopen changes are submitted. Unchanged files are moved to the default changelist. +reopen appended to the submit option flag will cause submitted files to be reopened on the default changelist.
这可能是调查用户是否因为冷漠而仅检查未更改文件的途径.
编辑:
鉴于您想要强制执行限制而不管用户的工作区设置如何,那么您将需要其他答案中建议的触发器.
您需要查看Perforce的文档以确定详细信息,但您需要更改内容触发器.
您可能希望传入%user%以及%change%plus以及其他可能的变量,这样您就可以将昂贵的操作限制为只有问题的用户.