在 VS Code 中使用 Git 提交部分文件修改

这里有需要一个概念叫 暂存更改(Stage Changes)。要区别于 搁置更改(Stash Changes)。暂存更改并不是说暂时搁置不提交的部分,相反,暂存更改是你想临时提交的内容。

暂存更改(Stage Changes): 将工作目录中的特定修改标记为”准备提交”的状态,是提交前的准备步骤(git add 的操作)

使用场景:选择性地提交部分文件的修改,或一个文件中的部分代码块(而不是整个文件)。

VS Code操作

  1. 在源代码管理视图中
  2. 点击文件旁的+号暂存整个文件
  3. 或点击...选择”暂存所选范围”来暂存特定代码块

命令行等效

 git add 文件名       # 暂存整个文件
 git add -p 文件名    # 交互式选择代码块暂存

搁置更改(Stash Changes):将工作目录中的所有未提交修改临时保存到栈中,清空工作目录,本质是是临时保存工作进度的操作(git stash 的操作)

使用场景

需要切换分支但不想提交当前半成品工作或临时修复紧急bug时需要干净的工作目录

VS Code操作

  1. 在源代码管理视图中
  2. 点击...选择”存储更改”

命令行等效

  git stash           # 存储所有未提交更改
  git stash pop       # 恢复最近存储的更改
暂存更改 (Stage)搁置更改 (Stash)
目的准备要提交的特定内容临时保存所有未提交的工作
影响范围可选择部分文件/代码块总是影响所有未提交修改
Git命令git addgit stash
后续操作需要执行git commit需要执行git stash pop
是否清空工作区

搁置工作流(临时保存)

   git stash               # 保存所有修改
   git checkout hotfix     # 切换到其他分支
   # 处理紧急任务...
   git checkout main       # 切回原分支
   git stash pop           # 恢复之前的工作

还要注意的是,git stash 只保存跟踪的文件,对于新建的但是没有commit的他是不会临时保存的。。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注