分类目录归档:Tools

递归修改当前目录 .cpp、.h、.md 文件为 UTF8 或 UTF8-BOM 格式

有些代码目录下的文件格式不同,会导致一些编译错误或者中文出现错误等等问题,下面脚本就是解决这个问题而生的。使用 Autoit3 编译脚本后放到你要转换的目录中,运行脚本会转换所有 .cpp、.h、.md 文件为 UTF8 格式,如果你希望修改成 UTF8-BOM 格式,可以将 $FO_UTF8_NOBOM 修改为 $FO_UTF8

继续阅读

NSIS 打包 Electron 项目的注意事项(拖拽、权限、兼容性等)

我自己本人不做 Electron 的开发,但有一位合作伙伴在使用 NSIS 打包 Electron 应用的时候遇到了一些问题,主要问题有以下几个,先记录下来,然后追个击破。

  • 打包后应用在 Windows 7 无法直接运行,需要修改兼容性为 Windows 7 才可以使用
  • 打包后安装或者卸载时应用在运行会安装或者卸载失败,无法替换或删除应用(这个与 Electron 无关但也介绍一下)
  • 打包后应用第一次启动无法使用拖拽功能

继续阅读

git pull 代码的时候默认使用 rebase 而不是 merge

git pull 实际会有两个操作,一个是 git fetch,另外一个是 git merge。一般 merge 的情况下会产生一个新的提交名字为 Merge branch ****,如下图所示:

这个新的提交会导致提交记录中产生多余的提交信息,实际与解决问题相关的提交不符而且对于一些洁癖来说这种难以接受,所以 git 提供了一个 rebase 的方式来替代 merge,rebase 可以按顺序结构重新整合提交顺序而不是产生一个新的提交。具体的区别大家可到网络上搜索一下这里重点不是介绍他们两个的区别。

而如果你希望每次拉代码的时候不需要执行 git fetch 后再执行一次 git rebase,而是像以前一样直接执行 git pull 而是使用 rebase 来合并代码的话,那以下命令可以帮到你。

git config --global pull.rebase true

执行次命令后,每次 git pull 都将是一个 git fetch + git rebase 的过程了,而不是以前的那种方式。

svn 项目迁移到 git 保留 commit 记录

最近迁移了两个 SVN 项目到 Gitlab 上,唯一的目的就是想把提交记录保存下来,至于谁提交的无所谓,只希望能在看不懂一些代码的时候能追溯回去看看当时为什么这样修改。随后查看了很多资料,初试的时候遇到了很多问题,最终使用如下命令完美解决:

git svn clone https://mysvn/demo --no-metadata --no-minimize-url demo

参考资料:https://blog.csdn.net/xueshanhaizi/article/details/54929365

用于 Windows 下的日志跟踪分析工具(Tail for Windows)

在 Linux 下做开发和调试任务的时候,有些情况会动态去跟踪一些日志的变化来调试问题。Linux 下使用 tail -f 就可以达到需求了,但 Windows 下一直没有找到类似的好用工具,在 github 上也有一些开源项目,不是项目相对陈旧界面丑陋,就是功能不完善不能让人专注于分析日志。索性自己做了一个,预览图如下:

继续阅读

Windows 监控 iPhone 上的 HTTP 访问记录

有些测试场景需要知道在真实实体手机上访问我们开发的页面时产生了哪些不同的请求、访问了哪些链接。这个事情在 Windows 上做起来很简单,工具也有很多。浏览器自带的监控工具、HttpWatch 等工具都可以实现,今天介绍的主角 charles-proxy 也可以实现,但是 charles-proxy 强大的地方在于它可以建立一个临时代理服务器,手机上设置使用这个代理即可在 charles-proxy 中查看所有的浏览记录。

继续阅读