小米07月工作记录 工作记录
小米07月工作记录
2015.07.09
今明两天是git大讲堂,进一步熟练此工具。
添加远程仓库
git remote add [name] [url]
git add
是个多功能命令,根据目标文件的状态不同,此命令的效果也不同:可以用它开始跟踪新文件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态等
git diff
是看本地修改与暂存区的差别,若暂存区没有内容,那就是比较本地与staged的差别。
若要看已经暂存起来的文件和上次提交时的快照之间的差异,可以用 git diff --cached
跳过使用暂存区域: 尽管使用暂存区域的方式可以精心准备要提交的细节,但有时候这么做略显繁琐。Git 提供了一个跳过使用暂存区域的方式,只要在提交的时候,给 git commit
加上 -a 选项,Git 就会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过 git add
步骤
git reset
是撤销上一次的add并不会对文件内容有变化
另外一种情况是,我们想把文件从 Git 仓库中删除(亦即从暂存区域移除),但仍然希望保留在当前工作目录中。换句话说,仅是从跟踪清单中删除。$ git rm --cached readme.txt
,不再跟踪。不加的话在工作目录中也没了。
git log -p -2
我们常用 -p 选项展开显示每次提交的内容差异,用 -2 则仅显示最近的两次更新:
如果刚才提交时忘了暂存某些修改,可以先补上暂存操作,然后再运行 --amend
提交:
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
git 代码自动补全 代码自动补全 代码自动补全 这里走
2015.07.13
MiLinkSDKForJava 开发 , InputStream 得重新开一个线程,因为读会阻塞。
2015.07.15
利用FutureTask 实现同步的效果,我们知道 V v = futureTask.get()
会阻塞当前线程,直到其set()
方法被调用,所以我们可以执行一个异步方法,待方法成功后利用回调执行set()
解除当前线程的阻塞。 这里要注意set
的作用域是 protected
,无法外部调用,可以子类继承使用。
svn add后取消 svn revert --recursive example_folder
网卡看tcp发包 sudo tcpdump -i en1 host 120.134.33.114 -nx -s 5000 -XX
周一确定这个命令 git checkout --track origin\v7.2
效果与 git checkout -b [分支名] [远程名]/[分支名]
相同
Thread.setDaemon
设定后台运行,为true时,创建他的线程结束,他也就结束。
git cherry-pick commit_hashcode
是个好命令,在当前分支提交相应hashcode的 commit 。
删除远程分支 git push origin :chengsimin
git rebase
衍合
Thread.setUncaughtException()
自定义异常处理,可以在其中上报异常。
2015.07.22
Timer.scheduleAtFixedRate(task, 1000, 4000);
周期定时器,1s后启动,每4s执行一次。
Timer.schedule(task, 1000);
一次性定时器,1s后启动。
2015.07.28
安装 protobuf,运行autogen.sh
时提示缺少autoreconf: command not found
.安装它,又提示Can't exec "glibtoolize": No such file or directory
, 安装brew install libtool
.
get conf 心跳代替
native 层因为消息队列的清空丢失发送包问题。
2015.07.29
思考:为什么抽象方法不能是静态的?
2015.07.30
HomeBrew ,apt-get 的替代品
终极Shell iTerm2 + oh my zsh
Handler利用Messenger(隶属aidl)实现进程间通信
2015.07.31
Eclipse 和 Android Studio 都有主题,换成黑色背景,大家一起来保护眼睛。
blog comments powered by Disqus