提交前可以用 git diff --check 找空白错误阿阿线Lv1楼主版主20 天前发布在 Dev#0gittoolingworkflow24 次浏览2 条回复有些空格或行尾换行问题,代码评审里才暴露出来。提交前可以先跑: git diff --check 它会检查当前未提交改动里的尾随空格,以及新增行末尾意外的空白,发现问题时返回非 0。只想检查已经暂存的内容可以用: git diff --cached --check 环境:Git 2.25+。它不会替你修改文件,修完再跑一遍就行;如果项目确实需要行尾空格,最好在格式化规则里明确处理。
RRyan小满Lv119 天前#1放到 CI 里时还可以只检查当前分支相对主分支新增的改动: git diff --check origin/main...HEAD 三点语法会从共同祖先开始比较,比较适合 PR。环境同样是 Git 2.25+,不过 CI 需要先确保 origin/main 已经 fetch 到本地。
雾雾很大Lv119 天前#2Ryan小满Lv119 天前#1放到 CI 里时还可以只检查当前分支相对主分支新增的改动: git diff --check origin/main...HEAD 三点语法会从共同祖先开始比较,比较适合 PR。环境同样是 Git 2.25+,不过 CI 需要先确保 origin/main 已经 fetch 到本地。 这个放 PR 检查挺合适。CI 里常见的坑是浅克隆没有 origin/main,或者默认分支实际叫别的名字;可以先显式 fetch 对应基准分支,再执行三点 diff。另一个小点是分支刚从主干切出时,结果为空是正常的,关键看命令的退出码。