第3节:环境准备:创建GitHub仓库,配置Git,安装Node.js/Python等运行环境
说实话,很多同学在教程开头就栽在了环境配置上。明明代码逻辑都写对了,结果本地跑不起来,或者推送到 Actions 上直接报错。我个人习惯先把地基打牢——这一节我们就一步一步来,把 Git、GitHub 仓库和运行时环境全部搞定。
3.1 安装 Git 并完成初始配置
Git 是整条 CI/CD 流水线的血管。没有它,代码根本流不到 GitHub 服务器上。我记得第一次用 Git 时,光合并冲突就折腾了两小时……嗯,下面这些配置能帮你省掉很多类似的坑。
核心命令:安装后先设置用户名和邮箱,否则无法提交。
# 安装 Git(macOS 已自带,Windows 去官网下载)
sudo apt install git # Ubuntu
brew install git # macOS
# 配置全局身份
git config --global user.name "你的名字"
git config --global user.email "你的邮箱@example.com"
# 推荐策略:默认分支改名为 main
git config --global init.defaultBranch main
小技巧:我曾经因为没有设置
user.email,导致 Actions 里提交记录显示为 Unknown。后来养成了写完就配的习惯,再也不怕“幽灵提交”了。
3.2 创建 GitHub 仓库并关联本地
仓库是后续所有自动化流程的起点。你想想看,如果仓库结构乱七八糟,Actions 脚本读路径都会读错。我建议按照下面的步骤来,一步到位。
- 登录 GitHub,点击右上角 “+” → New repository
- 输入仓库名,例如
snapshot-test-demo - 勾选 Add a README file(方便首次克隆)
- 选择 Public(教程阶段公开即可,生产环境可按需设置)
- 点击 Create repository
然后在本地执行:
# 克隆到本地
git clone https://github.com/你的用户名/snapshot-test-demo.git
cd snapshot-test-demo
注意:如果你使用 SSH,记得提前配置好 SSH key。我曾经因为忘了加公钥,push 时总要求输密码,烦到不行。建议直接用 HTTPS + personal access (PAT),更省心。
3.3 安装 Node.js 与 npm
快照测试最常用的前端框架是 Jest(配合 React/Vue),所以 Node.js 是必装项。下面这个版本我实测过,和 GitHub Actions 自带的 runner 兼容性最好。
| 工具 | 推荐版本 | 安装命令(macOS/Linux) |
|---|---|---|
| Node.js | 20.x LTS | nvm install 20 |
| npm | 随 Node 自带 | 无需单独安装 |
# 使用 nvm 管理 Node 版本(强烈推荐)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc # 或 ~/.zshrc
nvm install 20
nvm use 20
# 验证
node -v # 应输出 v20.x.x
npm -v # 应输出 10.x.x
避坑指南:我曾经直接装了系统包管理器里的 Node(比如 apt install nodejs),结果版本太老,Jest 报了一堆语法错误。后来全部换成 nvm,再也不纠结版本问题。
3.4 安装 Python 与 pip
如果你的快照测试涉及后端接口(比如用 pytest 做 API 快照),Python 也得备好。我个人更习惯用 pyenv 隔离环境,避免污染系统 Python。
| 工具 | 推荐版本 | 安装方式 |
|---|---|---|
| Python | 3.12.x | pyenv install 3.12 |
| pip | 随 Python 自带 | python -m pip install --upgrade pip |
# macOS 下安装 pyenv
brew install pyenv
# 或 Linux 下用自动安装脚本
curl https://pyenv.run | bash
# 安装指定版本
pyenv install 3.12.3
pyenv global 3.12.3
# 验证
python --version # 3.12.3
pip --version # 24.x
特别注意:在 GitHub Actions 的 runner 里,默认只有
python3 命令。所以本地开发时建议用 python3 别名,避免脚本里写死了 python 导致找不到。
3.5 验证所有环境并推送到 GitHub
所有工具装好后,咱们做个快速验证。你想想看,如果现在不验证,等写 Actions 脚本时再排查,会浪费大量时间。我习惯写一个简单的测试文件,确保流水线能跑通。
# 在仓库根目录创建 .node-version 和 .python-version
echo "20" > .node-version
echo "3.12.3" > .python-version
# 创建一个测试 JS 文件
cat > test.js <<EOF
console.log("Node.js 环境就绪!");
EOF
# 创建一个测试 Python 文件
cat > test.py <<EOF
print("Python 环境就绪!")
EOF
# 运行查看
node test.js
python3 test.py
如果控制台都输出了预期文字,说明环境搭配没问题。接下来我们把代码推送到 GitHub 仓库。
git add .
git commit -m "chore: 初始化环境配置"
git push origin main
警告:千万不要把
.env、node_modules 或者 __pycache__ 提交上去。我见过同事把整个 node_modules 推上去,仓库瞬间变成 500MB,CI 跑一次要十分钟。务必在根目录创建 .gitignore。
一个标准的 .gitignore 片段:
# Node
node_modules/
npm-debug.log*
# Python
__pycache__/
*.pyc
*.pyo
.venv/
# IDE
.vscode/
.idea/
# 环境变量
.env
3.6 核心知识结构一览
下面这张图帮你把整节的内容串起来——从本地安装 → 仓库创建 → 双语言环境 → 最终推送,形成一个闭环。我每次配新电脑都按这个流程走,从来不出错。
3.7 快速自查清单
最后,我送你一张检查表。把每一步都勾上,确保万无一失再往下走。
- □ Git 已安装,
git --version输出 ≥ 2.30 - □ 已配置
user.name和user.email - □ GitHub 仓库已创建,
git remote -v正确显示 - □ Node.js 20.x 可用,
node -v正常 - □ Python 3.12.x 可用,
python3 --version正常 - □
.gitignore已排除 node_modules / __pycache__ - □ 本地测试文件能成功运行
- □ 已执行
git push,GitHub 页面看到最新提交