头图

你好,我是向华。

之前在文章用了P4这一招,九成问题能自救提到过P4VJS的能力,今天我们继续聊聊P4VJS。

原生Diff引发的思考

开发一段时间后,终于要把写了一天的代码提交到P4仓库了。

通常情况下,项目规范都会提醒各位开发者,在提交前多检查Diff,以免错误代码被提交到仓库。

如果项目使用P4V,在提交前,会看到待提交的Changelist中可能有很多个文件被修改了。

那么,你会采用何种方式查看这些文件修改的Diff结果呢?

张三说,我会挑选几个重要的文件,一个个右键选择Diff Against进行查看。

王五说,我会右键整个Changelist,然后查看所有文件的Diff。

实际工作中,这两种方法都存在缺点。

如果你像张三那样,挨个找到自己想要的文件再查看Diff,虽然可以精准地找到需要的代码变化,但是会浪费很多时间。

如果你像王五那样,一次性查看所有文件的Diff,会弹出多个Helix Merge窗口,看完还得一个个关掉,十分麻烦。

图片

图片

那么,有没有类似Github提交记录中的Diff效果呢?

图片

P4VJS助力全新Diff体验

为了解决这个问题,在工作之余,我使用P4VJS和Vue制作了一款P4V工具。

https://www.bilibili.com/video/BV1Fh411G7p5/?aid=226972433&ci...

这个工具基本实现了我想要的效果,可以将一个Changelist中所有文件的 Diff 显示在P4V内部的窗口中,与P4V完美呼应。

目前,这个工具只支持文本类型文件的Diff查看,但是我将会抽时间加入其他文件类型的Diff查看功能。

这款工具之所以能够与P4V完美联动,得益于P4VJS应用的应用。界面上类似于Github的对比界面,得益于VueJS和ElementUI框架的功能加持。

可以这么说,P4VJS具备让用户低成本定制P4V工具的能力。

说在最后

这些技术的融合,让用户可以开发出更加有趣和实用的工具,对P4V进行功能优化和补充。


龙智DevSecOps
6 声望3 粉丝

分享DevSecOps解决方案最新动态,帮助您学习与使用Atlassian, Perforce, Mend(原Whitesource), Cloudbees, TESSY, Jama Software及龙智自研产品,实现软件研发的高度协同与自动化,提高交付效率与质量,并确保...