-
Notifications
You must be signed in to change notification settings - Fork 1
Description
1. Git 的凭证存储
换了硬盘装完系统配置开发环境时,使用 Sourcetree 来拉取 Gitlab 上的项目,由于我克隆的时候使用的是 HTTP 协议,所以每次 pull/push 都要输入账号密码超级烦,这里学习了 Git 针对 HTTP 协议 pull/push 推出的凭证存储系统,只要把账号密码这种凭证存储起来就不用频繁输入验证了。凭证存储分为两种模式:cache模式 和 store模式,存储在缓存(内存)中或是存储在本地硬盘上。
cache 模式无疑是最安全的,它会将凭证存放在内存中一段时间。 密码永远不会被存储在磁盘中,并且在15分钟后从内存中清除,所以还是会定时输入凭证,使用方法:
git config --global credential.helper cache
store 模式则是最方便的,一次配置,永久有效(除了更换密码的情况),一劳永逸地解决了我们的问题,但是安全性较低,因为它是以明文的形式保存密码的,就放在 home 目录里,使用方法:
git config --global credential.helper store
如果是 Mac 系统的话,上面 store 的问题就不是问题了,osxkeychain 模式它会将凭证缓存到你系统用户的钥匙串中。 这种方式将凭证存放在磁盘中,并且永不过期,而且是被加密的,这种加密方式与存放 HTTPS 凭证以及 Safari 的自动填写是相同的。
2. Android Didn't find class "XXX.MainActivity" 错误
OPPO 手机编译完安装程序之后每次打开都闪退,看 Logcat 上的错误信息是提示:
java.lang.ClassNotFoundException: Didn't find class "XXX.MainActivity" on path: .....
具体原因不明,但是修改 Preferences -> Build, Execution, Deployment -> Instant Run 中的选项关掉就好,不能使用 Instant Run 的便捷功能很是遗憾
3. Android 打包出错 Error:Execution failed for task ´:app:lintVitalRelease´
项目突然打包就出错了,网上找到的解决方法是添加如下配置:
...
android {
lintOptions {
checkReleaseBuilds false
abortOnError false
}
}
...
的确解决了我的问题,参考链接
4. React Navigation 跳转问题
在某个项目中遇到了跳转的奇葩问题,A 页面跳转到 B页面再返回来马上点击跳转 B页面,很大几率会触发 B 页面的 componentDidMount 执行了两次,