今天下午写了一些代码,吃晚饭时分用Android Studio commit了一下,不知道有没有选择Commit and push,结果刚才代码出bug我想回滚到上个版本的时候,发现Android Studio没有上传那份代码!!非常难受,就像word写了一下午文章结果电脑死机一样。

我遇到了一个让我摸不着头脑的bug,好像只有每天晚上天黑之后才会出现这个bug,读了几遍代码都没发现症结所在,以至于我把系统时间都改成白天了。。。然而发现跟时间并没有关系,所以想要恢复到下午吃饭时的版本。。。以后还是用终端吧,能看到上传的进度提示。

------

May 5th 0:10 a.m.

刚才替换了中午写的版本,发现并不是写入数据库部分的问题,因为那部分代码完全一致。那么是什么问题呢。真是百思不得其解,我没有在其他地方操作数据库啊。我想起还在adapter中操作过数据库。于是把中午adapter的代码拿过来,但是还是一致啊,,然而,把同样的194行代码替换回原来的那儿,发现bug消失了。然后我又把刚才出问题的代码拿来试试,仍然很顺利。。我真的不知道这是什么鬼!!!现在是12:32,难道是过了12点的缘故??应该不是。

真的很怕这种莫名其妙的bug啊。。

-----

May 5th 10:40 a.m.

昨晚的bug是这样的:加载recyclerView的时候不会update原有的table,而是insert到旧的table后面。

结果早上起来,什么都没动,bug就莫名其妙的消失了。我记得非常清楚昨晚睡觉之前两部手机上安装的APP都存在这样的bug。我都有点怀疑自己精神分裂了。。

刚才把所有warning清了一下,包括我怀疑的SimpleDateFormat的第二个参数,现在我把它指定成了Locale.CHINA。

检查了一遍所insert table的地方。

----

May 5th 12:21 p.m.

抓到虫了。去吃饭然后参加ingress FS了。变量太多了太混乱了。

May 5th 19:00 p.m.

上面的错误可以很清楚地看到,log中提示numCount不知为何变成了0,导致执行了insert而不是update。numCount是一个全局变量,用到的地方太多。

我直接取消了在这部分使用numCount这个变量,而是直接用root.getInt("count")来获取。

另外,旧的代码读起来自己都觉得绕了,索性直接把更新数据库部分的逻辑重新整理了一遍,今天(今次)数据条数>昨天(上次)数据条数的情况,和今天(今次)数据条数<昨天(上次)数据条数的情况,分开写了(虽然代码重复了一部分,但是脉络瞬间清晰了不少)。

不要使用Android Studio的Git Commit了---->记一次debug的更多相关文章

  1. Android studio配置Git

    Android studio配置Git 1.下载window 版git并安装:下载地址 2.Android Studio设置git插件:File->Setting->Version Con ...

  2. Android Studio配置Git及Git文件状态说明

    Android Studio配置Git还是比较简单的,麻烦的是可能中间出现各种问题.如果你想了解或感兴趣,请往下看. 首先你得下载Git客户端,网址:http://git-scm.com/downlo ...

  3. 或许是介绍Android Studio使用Git最详细的文章

    欢迎访问我的个人博客转发请注明出处:http://www.wensibo.top/2017/03/12/GitOnAS/ 前言 本文较长,图片很多很多,流量党慎入 使用Git已经有一段时间了,但是之前 ...

  4. Android Studio中Git和GitHub使用详解

    一.Git和GitHub简述 1.Git 分布式版本控制系统,最先使用于Linux社区,是一个开源免费的版本控制系统,功能类似于SVN和CVS.Git与其他版本管理工具最大的区别点和优点就是分布式: ...

  5. Win环境 Android Studio使用Git 教程 ( 一 )

    一. 安装 下载安装完成Git后 进入命令行 输入命令git --version,如果能显示版本则说明安装成功,如果没有显示版本,需要配置环境变量: 在path中添加git的安装位置 二 . 配置信息 ...

  6. Android studio使用git教程

    ①下载Git工具,配置到Android studio中 http://git-scm.com/downloads ------------------------------------------- ...

  7. Android Studio 通过 git update 或者 pull 的时候出错及解决办法

    Android Studio 通过 git update 或者 pull 的时候出错,log 如下: Couldn't save uncommitted changes. Tried to save ...

  8. Android Studio的git功能的使用介绍

    本文介绍Android Studio(下面简称AS)中git工具的一些简单使用.因为AS为git的使用提供了很多人性化的图形界面操作,在很大程度上可以增加开发效率.本文面向新手,题主自己也是新手一枚, ...

  9. 如何使用 Android Studio 的 git hub 功能

    How to use GitHub with Android Studio This article will explain how to use GitHub with Android Studi ...

随机推荐

  1. 微信小程序之云开发一

    最近听说微信小程序发布了云开发,可以不需要购买服务器,就能开发小程序和发布小程序,对于动辄千元的服务器,极大的节约了开发成本,受不住诱惑,我就开始了小程序的云开发,目前项目已上线,亲测不收费,闲不住的 ...

  2. eclipse导入web工程变成Java工程,解决方案

    经常在eclipse中导入web项目时,出现转不了项目类型的问题,导入后就是一个java项目. 解决步骤: 1.进入项目目录,可看到.project文件,文本编辑器打开. 2.找到<nature ...

  3. 第三方苹果开发库之ASIHTTPRequest(翻译版)

    本文转载至 http://www.cnblogs.com/daguo/archive/2012/08/03/2622090.html   来自:http://www.dreamingwish.com/ ...

  4. Java 学习 day09

    01-面向对象(内部类访问规则) package myFirstCode; /* 内部类的访问规则: 1. 内部类可以直接访问外部类的成员,包括私有private. 之所以可以直接访问外部类中的成员, ...

  5. Python学习笔记(二)在线用pip下载第三方包

    根据他人的博客,可以发现pip也是可以离线安装已经下载好的包的,具体请参考<pip常用命令>.由于现在还没进展到那个程度,所以本次博客先记录一下我已经学会的东西. 1.pip基本用法 (1 ...

  6. eclipse里面用svn关联项目

    eclipse里面共享项目经常会用到svn或者git插件 关联项目的步骤如下: 如果 点击finish会遇到卡住问题的话,不要着急,我们需要设置svn的client设置: 如果设置了之后还是很卡的话, ...

  7. mysql数据库访问授权

    1.进入MySQL服务器 d:\mysql\bin\> mysql -h localhost -u root; 2.赋予任何主机访问数据的权限 mysql> GRANT ALL PRIVI ...

  8. Python菜鸟之路:sqlalchemy/paramiko进阶

    前言:ORM中的两种创建方式 数据库优先:指的是先创建数据库,包括表和字段的建立,然后根据数据库生成ORM的代码,它是先创建数据库,再创建相关程序代码 代码优先:就是先写代码,然后根据代码去生成数据库 ...

  9. hibernate多对多关系配置

    一.创建用户,角色实体类. 一名用户可以有多个角色.一个角色可以对于多名用户. 用户实体类 public class User { private int uId; private String uN ...

  10. sql语句查看库里有没有这张表,有就删除

    查看库里有没有这张表,有就删除 DROP TABLE IF EXISTS 表名