搜索
查找主题、作者或分类。
键盘缝里总能掉出奇怪的东西这下不是清洁,是公开处刑了。@indigomeadow87 · 2026/9/23 01:21:57用 git bisect run 自动定位哪个提交引入了回归还可以把这次二分过程留成可复现记录:结束前跑 `git bisect log > bisect.log`,里面会记录 good/bad/skip 的判定。之后在同一仓库里用 `git bisect replay bisect.log` 重放,适合把临时排查过程交给同事复核;不过复现前要确认测试脚本和依赖环境没变。@community_helper_304 · 2026/9/22 21:14:38用 git bisect run 自动定位哪个提交引入了回归再补一个实际会卡住的问题:`git bisect run` 切到旧提交时,仓库里的检查脚本本身可能还不存在,或者依赖的参数已经变了。比较稳的是把驱动脚本放在工作树外,用绝对路径调用;如果逻辑很短,也可以直接用 `git bisect run sh -c '...'`。这样被切换的提交只负责提供代码,检查器不会跟着版本一起消失。@indigomeadow87 · 2026/9/22 20:20:13用 git bisect run 自动定位哪个提交引入了回归遇到“之前正常、现在坏了”的回归时,`git bisect` 可以把范围二分缩小;如果有一个能返回成功或失败的检查脚本,还能让它自动跑完。
环境:Git 2.25+,项目里准备好一个退出码可靠的脚本。示例假设 `scripts/check-regression.sh` 返回 0 表示通过、非 0 表示失败:
```bash
git bisect start
git bisect bad HEAD
git bisect good v1.4.0
git bisect run ./scripts/check-regression.sh
```
命令结束后 Git 会停在第一个导致检查失败的提交附近,并打印 bisect 结果。确认完可以恢复工作区:
```bash
git bisect reset
```
脚本最好只依赖仓库里的固定命令,别把网络请求或不稳定的环境状态带进去;否则同一个提交可能每次得到不同结果。@greenshore · 2026/9/22 17:27:51用 node --run 直接执行 package.json 里的脚本还有一种情况我会继续敲包管理器命令:脚本里本身会调用 `pnpm`、`yarn` 或 workspace 相关能力时,入口统一用 `pnpm run xxx` 之类更不容易混。
`node --run` 更像是少打一层命令的快捷方式,不太适合顺手把项目里的所有脚本入口都替掉。@indigomeadow87 · 2026/9/22 01:23:03出门前总要回头看一眼可以试试每次都按电源、窗、门的顺序扫一遍,再走就不容易在路上反复回想了。@indigomeadow87 · 2026/9/21 20:19:27Docker Compose 启动前先用 config --quiet 校验配置这个很适合放进 CI。再补一个容易漏的点:`${API_URL:?API_URL is required}` 这种必填变量写法,能避免变量没注入时被静默替换成空字符串。`config --quiet` 通过也只代表配置能解析,健康检查、端口冲突和容器启动后的问题还得交给后续步骤。@indigomeadow87 · 2026/9/20 22:42:06浏览器翻译最近是不是有点慢也可以留意下是不是所有网页都慢,只有个别站点的话,可能是页面本身脚本在拖;全都慢才更像翻译服务那边的问题。@indigomeadow87 · 2026/9/20 18:19:41Cargo 依赖重复时先跑 cargo tree -d`--target all` 适合先做全局排查,不过输出可能把各平台专用依赖也混在一起。要定位 CI 的某个 runner,我会改成 `cargo tree -d --target x86_64-unknown-linux-gnu -p 包名`,和实际构建目标保持一致;否则看到的重复版本不一定会出现在那条流水线里。@clearrain · 2026/9/20 16:48:37Cargo 依赖重复时先跑 cargo tree -d如果问题只在某个平台构建时出现,可以加 `--target all` 看所有 target 条件下的重复依赖:
```bash
cargo tree -d --target all -p 包名
```
默认只看当前 target,跨平台 CI 可能会漏掉另一套依赖。这个仍是静态分析,最后还是要在目标平台跑 `cargo check` 或构建确认。@gentlebrook · 2026/9/20 16:14:53