第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 脚本读路径都会读错。我建议按照下面的步骤来,一步到位。

  1. 登录 GitHub,点击右上角 “+” → New repository
  2. 输入仓库名,例如 snapshot-test-demo
  3. 勾选 Add a README file(方便首次克隆)
  4. 选择 Public(教程阶段公开即可,生产环境可按需设置)
  5. 点击 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.js20.x LTSnvm 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。

工具推荐版本安装方式
Python3.12.xpyenv 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 核心知识结构一览

下面这张图帮你把整节的内容串起来——从本地安装 → 仓库创建 → 双语言环境 → 最终推送,形成一个闭环。我每次配新电脑都按这个流程走,从来不出错。

环境准备流程总览 安装 Git 配置 user.name / user.email 创建 GitHub 仓库 添加 README + .gitignore git clone 到本地 关联远程仓库 安装 Node.js + npm 推荐 nvm 管理版本 安装 Python + pip 推荐 pyenv 管理版本 编写测试文件验证 node test.js / python3 test.py git add + commit + push 将本地环境配置推送到 GitHub 关键提醒 本地版本号务必与 GitHub Actions runner 保持一致 否则 CI 中可能因缺依赖或版本不兼容而失败

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 页面看到最新提交