美文网首页
通过git比对定位bug

通过git比对定位bug

作者: 小而白 | 来源:发表于2018-12-19 14:15 被阅读0次

    一、bug描述:

    点击某ReactNative页闪退,而上个版本是正常的。

    二、bug修复全程回顾:

    全局断点,定位崩溃原因,发现是jsbundle 文件不存在。直接将该文件添加到工程运行,确实不会再引发崩溃。而该文件是ReactNative生成的,由于对ReactNative的调试不太方便,且上线时间紧迫。所以暂时放弃从技术角度解决。

    既然从技术角度短时间解决无望,先定位出现问题在哪次提交。然后对比差异。

    经过长时间排查和调试,并没有发现代码有异常,怀疑是某次提交的工程配置文件出错。

    基于以上疑点,解决思路:如果能以正确的配置为基础(比如上次发布的版本),让出现问题的分支,对比工程文件的差异,重新提交就能解决这个问题。由于工程文件默认是以二进制形式提交的,如果不知道如何比对,或者不清楚差异内容代表的含义。比较笨的办法是:工程文件使用未出问题的版本,然后Xcode手动重新引用新增删的文件,再提交更新的工程文件。

    经过比对,会发现下图中的配置出现bug的分支是没有的。

    image.png

    重新添加该脚本即可(如图),在工程文件中直接添加相应代码应该也是可以的(未测试)。


    image.gif

    三、总结:

    如果代码没有发现问题,就要考虑工程配置是否出错。

    相关文章

      网友评论

          本文标题:通过git比对定位bug

          本文链接:https://www.haomeiwen.com/subject/fwqjkqtx.html