跳转到内容

使用 Git 管理代码版本

如果您不确定当前项目是否已经用 Git 管理,或不知道下一步应该执行哪些命令,可以先询问 Probes,让它根据当前工程给出版本管理方案。

请检查当前 VS Code 工作区是否已经使用 Git 管理。
如果还没有,请给出适合这个项目的 Git 初始化方案;
如果已经有 Git 仓库,请帮我确认当前变更状态,并建议我在让你修改代码前应该如何保存一个可回退版本。
请先说明方案和需要我确认的风险点,暂时不要修改文件。

Git 可以帮助您记录每一次代码修改。在让 Probes 阅读、修改、构建或调试工程前,建议先确认当前代码已经被 Git 管理,并保存一个可回退的版本。

如果您还不熟悉命令行,也可以使用 VS Code 左侧的 Source Control / 源代码管理 面板完成大部分操作。

先在电脑上安装 Git。安装完成后,打开 VS Code 终端或系统终端,执行:

Terminal window
git --version

如果终端能显示 Git 版本号,说明 Git 已经可以使用。

如果提示找不到 git 命令,请重新安装 Git,或确认安装时已经把 Git 加入系统环境变量。安装后建议重新打开 VS Code,再次执行上面的命令确认。

在 VS Code 中打开您的项目文件夹,然后在终端执行:

Terminal window
git status

如果当前项目已经是 Git 仓库,终端会显示当前分支、已修改文件或未跟踪文件。

如果提示当前目录不是 Git 仓库,可以在确认项目目录正确后执行:

Terminal window
git init

初始化后,项目根目录会出现 .git 目录,Git 会从这里开始记录这个项目的版本历史。

在开始让 Probes 修改代码前,先保存一个当前状态:

Terminal window
git status
git add .
git commit -m "记录当前可运行版本"

这次提交相当于一个还原点。之后即使代码被修改,您也可以对比修改内容,或回到这个提交时的状态。

如果您使用 VS Code 的源代码管理面板,可以按下面方式操作:

  1. 打开左侧 Source Control / 源代码管理 面板。
  2. 查看本次准备保存的文件变更。
  3. 在消息框中输入提交说明,例如 记录当前可运行版本
  4. 点击 Commit / 提交

提交前,请不要把密钥、账号令牌、.env 中的真实配置、构建产物或临时日志提交到仓库。

当 Probes 修改工程后,可以先查看发生了哪些变化:

Terminal window
git status
git diff

git status 用来查看哪些文件被修改、哪些文件是新文件。git diff 用来查看具体改了哪些代码。

如果只想查看某个文件的变化,可以执行:

Terminal window
git diff <file>

在 VS Code 中,也可以直接点击源代码管理面板里的文件,查看修改前后的对比。

当一轮修改已经确认有效,例如构建通过、功能完成或配置调整验证通过,建议再提交一次:

Terminal window
git add .
git commit -m "完成串口初始化修复"

提交说明尽量写清楚本次完成了什么,避免只写 updatefix 这类难以回忆的内容。

建议按小阶段提交:

  • 能正常构建时提交一次。
  • 完成一个明确功能时提交一次。
  • 修改重要配置前后分别提交。
  • 硬件验证通过后提交一次验证结果相关修改。

查看提交历史:

Terminal window
git log --oneline

如果某个文件被改坏,但还没有提交,可以恢复这个文件:

Terminal window
git restore <file>

如果只是想放弃所有未提交修改,请先确认没有需要保留的内容,再执行:

Terminal window
git restore .

回退已经提交过的历史会影响更大。对于不熟悉 Git 的用户,建议先复制 git log --onelinegit status 的输出,向团队成员或 Probes 说明希望回到哪个版本,再执行回退操作。

在让 Probes 修改代码前,可以先这样准备:

Terminal window
git status

如果当前已经有未提交修改,先确认这些修改是否需要保留。重要修改建议先提交,再让 Probes 继续工作。

给 Probes 的提示词中,可以明确说明当前目标和 Git 状态,例如:

请先阅读当前工程,定位串口初始化失败原因。
当前代码已经提交到 Git,请只做最小修改。
修改后请说明改动文件、验证命令和还需要我确认的硬件步骤。

完成后,先查看差异,再决定是否提交:

Terminal window
git status
git diff

这样可以让每一次 Probes 参与的代码修改都有清晰边界,也更容易在需要时回到稳定版本。