在工作中,为了提高代码质量和采用devops最佳实践,我和我的同事们已经对彼此的代码进行了一段时间的同行评审
我发现在ABAP系统中,这是一件非常痛苦的事情,在ABAP系统中,对象是单独进行版本控制的。
我们计划用ABAPGIT一次性地对其进行排序,或许可以将其与像jenkins这样的CI工具集成。或者至少依赖于GIT相关工具的惊人选择,比如gitlens for vs代码(下面,比较10次提交的2个版本)
遗憾的是我们还没有准备好,如果没有,中移物联网,因为我们还没有时间测试它(我认为我们不需要太多时间,但总有更紧迫的事情)
所以我们被困在SAPGUI或Eclipse:
(好的,好的云服务器,Eclipse是一个更好的显示类接口和方法作为一个单一的文件)
所以,数据更新,因为我正在开发我自己的编辑器插件,我点的子弹,并添加了一个功能,收集所有的变化,在传输和公开他们在代码的SCM视图。点击一下,它会显示传输中的最后一个版本和前一个版本中的最后一个版本之间的差异。
这并不能很好地解决一个变化有几个后续变化,但这是一个开始的情况。
另一个挫折的来源是告诉有意义的变化和无意义的变化。这里的主要问题是ABAP是不区分大小写的,虽然我们对小写/大写的用法进行了标准化,但我们并不总是始终如一地这样做,而且无论如何,企业信息化管理软件,我们的大部分代码库都是在这之前编写的。
这是我在复制abapgit类、进行一些琐碎的更改并保存(这也会自动格式化源代码)之后看到的:
所以我添加了一个按钮来过滤琐碎的更改(除了字符串和注释外,其他都转换成小写)
这些功能是全新的,我已经用了一个星期的前半部分,今天早上完成了第二部分。如果出现一些问题也不会感到惊讶
正如我所说的,这个问题的真正解决方案是跟踪GIT中的ABAP代码,并使用CI工具来管理pull请求。但与此同时,什么叫云服务,这会让我的生活更轻松