第 1 章 · 02 各平台安装方式


文档摘要

第 1 章 · 02 各平台安装方式 本节摘要:本节把 OCR 的安装方式讲全。第 01 节用过的 只是最常用的一种;在 CI 基础镜像、无 Node.js 的服务器、或要修改 OCR 源码的场景下,你还需要知道 curl 安装脚本、GitHub Release 静态二进制、源码构建这三种方式。本节逐一介绍四种安装途径的命令、适用场景与升级/卸载,并说明 OCR 把状态文件写在哪里,帮你建立「装好之后去哪儿找配置和会话」的心智地图。 内容来源:原项目中文文档 ,套用体系化模板改写。 学习目标 阅读完本节,你应当能够: 区分 OCR 的四种安装方式,并为自己的场景选对途径。 用 curl 安装脚本在 macOS/Linux/Windows 上完成无 Node.js 的安装。

第 1 章 · 02 各平台安装方式

本节摘要:本节把 OCR 的安装方式讲全。第 01 节用过的 npm install -g 只是最常用的一种;在 CI 基础镜像、无 Node.js 的服务器、或要修改 OCR 源码的场景下,你还需要知道 curl 安装脚本、GitHub Release 静态二进制、源码构建这三种方式。本节逐一介绍四种安装途径的命令、适用场景与升级/卸载,并说明 OCR 把状态文件写在哪里,帮你建立「装好之后去哪儿找配置和会话」的心智地图。

内容来源:原项目中文文档 pages/src/content/docs/zh/installation.md,套用体系化模板改写。

学习目标

阅读完本节,你应当能够:

  1. 区分 OCR 的四种安装方式,并为自己的场景选对途径。
  2. curl 安装脚本在 macOS/Linux/Windows 上完成无 Node.js 的安装。
  3. GitHub Release 直接下载静态二进制并校验完整性。
  4. 在需要改源码时从源码构建并交叉编译各平台二进制。
  5. 说明 OCR 的状态文件分布,并完成干净卸载。

一、四种安装方式总览

ocr CLI 有四种受支持的安装途径,按推荐度排序:

┌──────────────────────────────────────────────────────────────┐ │ 1. NPM(推荐) —— 一行命令,自带后台自动更新 │ │ 2. curl 安装脚本 —— CI 基础镜像 / 无界面环境 │ │ 3. GitHub Release 二进制 —— 不想装 Node.js │ │ 4. 源码构建 —— 要改 OCR 本身 / 特殊平台 │ └──────────────────────────────────────────────────────────────┘

💡 怎么选:本地开发选 NPM;CI runner 选 curl 脚本(更轻);离线服务器选 Release 二进制;贡献代码选源码构建。

二、NPM 方式(推荐)

安装

npm install -g @alibaba-group/open-code-review

固定到某个版本(用于可复现的 CI):

npm install -g @alibaba-group/open-code-review@<version>

自动更新

通过 NPM 安装时,ocr 默认会自动保持最新(静态二进制不参与此机制)。每次运行 ocr 时,wrapper 会在后台静默检查 registry 上的最新版本,发现更新即自动升级,不影响本次评审。两次检查之间有 18 分钟冷却,可用 OCR_UPDATE_INTERVAL(分钟)调整。

关闭自动更新,将 OCR_NO_UPDATE 设为任意非空值即可:

export OCR_NO_UPDATE=1

卸载

npm uninstall -g @alibaba-group/open-code-review

三、curl 安装脚本

一个便捷安装器,封装了 GitHub Release 二进制下载(带校验)——适合 CI 基础镜像和无界面环境。

macOS / Linux

curl -fsSL https://raw.githubusercontent.com/alibaba/open-code-review/main/install.sh | sh

它识别两个环境变量:

变量 默认值 用途
OCR_INSTALL_DIR /usr/local/bin 放置 ocr 二进制的位置。
OCR_VERSION 最新 release 固定到某个 release tag(如 v1.2.3)。

该脚本支持 darwinlinuxamd64 / arm64

Windows(PowerShell 5.1+)

请改用 PowerShell 安装脚本:

irm https://raw.githubusercontent.com/alibaba/open-code-review/main/install.ps1 | iex

它同样识别 OCR_INSTALL_DIROCR_VERSION(通过 $env:OCR_INSTALL_DIR / $env:OCR_VERSION 设置)。默认安装位置为 %LOCALAPPDATA%\Programs\ocr

💡 CI 场景:在 GitHub Actions / GitLab CI 的 runner 镜像里,用 OCR_VERSION 固定版本、OCR_INSTALL_DIR 指向一个已加入 PATH 的目录,即可得到可复现的安装。CI 集成的完整配方见第 5 章。

四、GitHub Release 二进制

如果你不想装 Node.js,可直接从项目的 GitHub releases 页面获取静态二进制。各平台下载命令如下:

# macOS (Apple Silicon) curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-darwin-arm64 chmod +x ocr && sudo mv ocr /usr/local/bin/ocr # macOS (Intel) curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-darwin-amd64 chmod +x ocr && sudo mv ocr /usr/local/bin/ocr # Linux x86_64 curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-linux-amd64 chmod +x ocr && sudo mv ocr /usr/local/bin/ocr # Linux ARM64 curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-linux-arm64 chmod +x ocr && sudo mv ocr /usr/local/bin/ocr # Windows (AMD64) curl -Lo ocr.exe https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-windows-amd64.exe # Windows (ARM64) curl -Lo ocr.exe https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-windows-arm64.exe

校验完整性

每个 release 还会在二进制旁发布 sha256sum.txt,供你校验完整性:

curl -LO https://github.com/alibaba/open-code-review/releases/latest/download/sha256sum.txt shasum -a 256 -c sha256sum.txt --ignore-missing

⚠️ 注意:Release 二进制不参与 NPM wrapper 的自动更新机制。升级时需手动重新下载对应平台的二进制。

五、从源码构建

仅当你要修改 OCR 本身,或在某个没有预编译二进制的平台上运行时才需要此方式。

前置条件

  • Go ≥ 1.25
  • Git
  • Make

构建当前平台

git clone https://github.com/alibaba/open-code-review.git cd open-code-review make build # 产出 dist/opencodereview sudo cp dist/opencodereview /usr/local/bin/ocr

交叉编译其他平台

make build-linux-amd64 make build-linux-arm64 make build-darwin-amd64 make build-darwin-arm64 make build-windows-amd64 # Windows (x86_64) make build-windows-arm64 # Windows (ARM64) make build-all # 一次性构建全部六个 make sha256sum # 同时产出 sha256sum.txt

make dist 会运行 clean → build-all → sha256sum,并在二进制旁写入一个 VERSION 文件——这正是 release 流水线执行的步骤。

运行测试

make test # LC_ALL=C go test -v -race -count=1 ./...

💡 想深入参与开发(分支约定、Make target、项目结构)详见第 6 章贡献一节。

六、验证安装

无论二进制来自哪里,都用这三条命令验证:

ocr version # 打印版本 + git commit + 构建日期 ocr --help # 顶层用法 ocr review --help # 完整的 review 命令参数列表

如果出现 command not found 错误,请确认安装位置在你的 $PATH 上:

which ocr echo $PATH

七、OCR 在哪里存放状态

装好之后,你迟早要去找配置文件、评审会话日志。OCR 的所有状态都集中在 ~/.opencodereview/ 下:

路径 存放内容
~/.opencodereview/config.json LLM 端点、语言、遥测配置(由 ocr config set 管理)。
~/.opencodereview/rule.json 可选的全局评审规则。
~/.opencodereview/sessions/<encoded-repo-path>/<session-id>.jsonl 每次评审会话的流式 JSONL 转录,供 ocr viewer 使用。
~/.opencodereview/{last-update-check,update.lock,update-available} NPM wrapper 的后台更新检查状态。
<repo>/.opencodereview/rule.json 可选的项目级评审规则——可安全提交。

⚠️ 注意:OCR 永远不会写入 ~/.opencodereview/ 之外(除 NPM 临时下载二进制外)。删除该目录即可完成干净的卸载:

npm uninstall -g @alibaba-group/open-code-review # NPM install sudo rm /usr/local/bin/ocr # binary install rm -rf ~/.opencodereview # all state

本节要点回顾

  1. 四种方式:NPM(推荐)、curl 脚本、Release 二进制、源码构建,按场景选。
  2. NPM 自动更新:wrapper 后台静默检查,18 分钟冷却,OCR_NO_UPDATE=1 关闭。
  3. curl 脚本:识别 OCR_INSTALL_DIROCR_VERSION,macOS/Linux 走 install.sh、Windows 走 install.ps1
  4. Release 二进制:六平台静态二进制 + sha256sum.txt 校验,不参与自动更新。
  5. 源码构建:make build 当前平台、make build-all 交叉编译六平台、make test 跑测试。
  6. 状态位置:全部集中在 ~/.opencodereview/,删它即干净卸载。
  7. 验证:ocr version / ocr --help / which ocr 三件套。

安装与状态分布讲完了。接下来进入第 2 章,我们把 OCR 接受的所有配置项与 CLI 参数讲透,让你把工具调到适合自己项目的状态。


发布者: 作者: 灏天文库 转发
评论区 (0)
U