You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用VSCode源代码控制界面查看Git当前提交与上一提交的差异?

解决方案

方法一:Git软重置(推荐)

直接在仓库终端执行以下命令,撤销最近一次提交但保留所有变更,这些变更会立刻出现在VSCode源代码控制标签中,支持图形化差异查看:

git reset --soft HEAD~1
  • 该命令仅移动HEAD指针至上一提交,不会修改任何文件内容,所有原提交的变更会以「已暂存」状态展示,你可以像查看未提交修改一样,点击每个文件查看可视化差异。
  • 查看完成后如需恢复原提交,执行以下命令即可复用之前的提交信息:
git commit -C HEAD@{1}

若希望变更以「未暂存」状态显示,使用默认的--mixed参数(可省略):

git reset HEAD~1

方法二:修复临时仓库复制方案

如果你偏好临时仓库的方式,改用以下命令可解决文件删除无法识别的问题:

  1. 在当前仓库根目录外创建完整的临时仓库副本:
git clone --no-hardlinks ./ ../temp-repo

--no-hardlinks参数确保复制完整文件而非系统硬链接,避免Git元数据丢失或状态异常。
2. 进入临时仓库并重置到上一提交的状态:

cd ../temp-repo
git reset --hard HEAD~1
  1. 在VSCode中打开临时仓库,即可对比原仓库当前状态与临时仓库的HEAD~1状态,所有文件变更(包括删除、修改、新增)都会被正确识别。

额外技巧:无需重置直接查看差异

在VSCode 1.65中,无需修改仓库状态就能查看当前提交与上一提交的差异:

  1. 按下Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac)打开命令面板。
  2. 输入并选择Git: Compare HEAD with...选项。
  3. 在弹出的列表中选择HEAD~1,VSCode会生成一个完整的差异对比面板,点击任意文件即可查看图形化的内容差异。

内容的提问来源于stack exchange,提问作者Adam Rutledge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 01:17:33