十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
svn中是自带这个功能的,选中文件右键在svn选项中有一个“与前一版本比较”和“显示日志”的功能选项,这里就可以完成各种版本对比了。(我的svn是汉化后的)
公司主营业务:成都网站设计、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出东莞免费做网站回馈大家。
Xmonitor会维护一个本地代码仓库,被启动时将检查线上代码库与本地维护的代码(历史版本)是否一样,如果发生变更则去找出变更了的方法,并判定这些变更的方法是否被测试CASE(service的单测CASE)覆盖到。当然也可以用它找出当前版本中所有的没有被case覆盖到的生产方法和已经被覆盖到的生产方法。
从开发的模块上分为五个部分,获取CASE依赖、获取最新版本代码、抽取测试覆盖方法、抽取生产代码方法、获取测试覆盖/未覆盖,见下图:
目录结构说明:
1.bin目录下存放sh文件:
getDiffRes.sh:调度java文件比对模块,完成工程下所有java文件方法抽取,并根据旧版本代码内容生成变更方法List.
createDependencyXML.sh:调度第三方工具[dependencyFinder]捕获测试CASE覆盖到的生产方法。
compareJavaCode.sh :调度代码比对模块是生成最新的代码变更生产代码中的方法。
2.lib目录下存放jar包,用于java程序执行:
CompareJavaCode.jar:完成新旧版本java文件对比,生成变更方法记录、接口-实现类关系。
CreateXmonitorXML.jar:生成xml格式的最终结果{此次变更中未覆盖的生产方法、此次变更中已覆盖的方法、所有代码中未覆盖的方法、所有代码中已覆盖的方法}。
GenNoCovModifyMethod.jar:引入测试CASE依赖信息、变更方法、接口-实现类关系,进行逻辑运算,生成各种情况下的覆盖/未覆盖生产方法列表。
3.conf目录下存放配置:di2ACC.conf、blacklist.dat
di2ACC.conf:工具依赖配置。
blacklistofnocover.dat、blacklistofcovered.dat:测试未覆盖、已覆盖过滤条件,对最后产出结果进行过滤。
注:默认过滤action包、bo包下的set、get方法,可以通过修改文件内容调整过滤条件。
3.Utils:工具函数目录,存放文件:Empty.java,getNoDuplicat.sh
getNoDuplicat.sh:结合blacklist.dat文件进行结果过滤。
Empty.java:一个空的java文件,协助生成java代码对比变更。
4.Data目录:程序运行中产出的各种结果文件。
5.Logs目录:用于存放日志,目前未开发独立的日志功能,试用期间以重定向的方式写Log.
6.main.sh:xmonitor工作主程序,完成对其他工作模块调度。
1、可以使用源代码监测软件进行检测,它能够快速扫描整个源码,并检测其中的可疑字符串,如果发现有任何可疑的字符串,就会发出警告。
2、源代码文件也可以使用特征哈希技术进行比对,它可以检测出源代码文件是否与其他文件相同,如果发现有不一致的情况,就可以判断是二次倒卖。
3、可以使用版权保护工具,它可以防止源代码被倒卖或者盗版,同时也可以追踪被倒卖的源码,以便及时发现二次倒卖的行为。
除了MyEclipse其他的没什么好的
像EditPlus、UltraEdit这些记事本类的工具看看短的代码还行,看有几百个类的代码就力不从心了。不能快速定位啊!
MYEclipse只要遇到不熟悉的类,按Ctrl然后点鼠标点击就会跳到那个类定义里面去,很方便,这是一般为文本编辑工具所没有的功能