简介
在这个实验中,你将学习如何检查 Git 仓库是否有暂存的更改。我们将探索 git stash list
命令以查看现有的暂存项,并使用 git status
来验证工作目录的状态。
通过遵循这些步骤,你将了解如何识别是否使用 git stash
临时保存了更改,并在没有暂存项或未提交的更改时确认工作树是干净的。
在这个实验中,你将学习如何检查 Git 仓库是否有暂存的更改。我们将探索 git stash list
命令以查看现有的暂存项,并使用 git status
来验证工作目录的状态。
通过遵循这些步骤,你将了解如何识别是否使用 git stash
临时保存了更改,并在没有暂存项或未提交的更改时确认工作树是干净的。
git stash list
进行检查在这一步中,你将了解 git stash
。假设你正在开发一个功能,但突然需要切换到另一项任务或修复一个 bug。你当前的工作还未准备好提交,但又不想丢失这些更改。这时,git stash
就派上用场了!
git stash
可以临时保存你未提交的更改(包括已暂存和未暂存的),并将工作目录恢复到与 HEAD
提交一致的状态。这就像是把你当前的工作暂时放在一个安全的地方,这样你就可以去处理其他事情,之后再回来继续。
首先,检查是否有暂存的更改。在终端中,确保你位于 ~/project/my-time-machine
目录下,然后运行以下命令:
cd ~/project/my-time-machine
git stash list
由于这可能是你第一次在这个仓库中使用 git stash
,输出应该为空,或者显示未找到暂存项。这意味着当前仓库中没有保存的暂存项。
## 如果没有暂存项,你可能看不到输出,或者会看到类似这样的消息:
## No stashed changes found.
理解 git stash list
是管理暂存更改的第一步。它能让你查看已保存的暂存项,这在应用或丢弃这些暂存项之前至关重要。
git status
进行验证在上一步中,我们使用 git stash list
检查了是否存在已有的暂存项。现在,让我们使用 git status
来查看工作目录的当前状态。这个命令对于了解存在哪些更改以及这些更改是否被 Git 跟踪至关重要。
确保你仍然位于 ~/project/my-time-machine
目录中。运行以下命令:
git status
由于自上次提交(在上一个实验中)以来我们没有进行任何更改,输出应该表明你的工作树是干净的。
On branch master
nothing to commit, working tree clean
这个输出确认了你的仓库中没有未提交的更改。工作目录与 master
分支上的最新提交相匹配。这是你在创建提交或应用暂存项并解决所有冲突后所期望的状态。
理解 git status
的输出对于管理你的 Git 工作流程至关重要。它会告诉你哪些文件已被修改、哪些文件已暂存以用于下一次提交,以及哪些文件未被跟踪。
在前面的步骤中,我们确认了仓库是干净的,并且没有已有的暂存项。这是开始试验 git stash
的理想状态。
为了演示 git stash
的工作原理,我们首先需要对仓库进行一些更改。让我们修改在上一个实验中创建的 message.txt
文件。
确保你位于 ~/project/my-time-machine
目录中。使用 nano
编辑器打开 message.txt
文件:
nano message.txt
在文件中添加一行新内容,例如:
Hello, Future Me
This is a new line.
按 Ctrl + S
保存文件,按 Ctrl + X
退出 nano
。
现在,让我们再次检查仓库的状态:
git status
你应该会看到输出表明 message.txt
已被修改:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: message.txt
no changes added to commit (use "git add" and/or "git commit -a")
这个输出显示我们已经对 message.txt
进行了更改,但这些更改尚未暂存以进行提交。这是使用 git stash
的绝佳场景。在下一个步骤中,我们将使用 git stash
来临时保存这些更改。
在这个实验中,我们学习了如何检查 Git 仓库中的暂存更改。我们首先使用 git stash list
命令来查看当前是否保存了任何暂存项。如果输出为空或显示没有暂存项的消息,则确认没有使用 git stash
临时存储更改。
然后,我们使用 git status
来验证工作目录的状态。git status
输出显示工作树干净,这确认了仓库中没有未提交的更改。这两个命令对于了解 Git 仓库的当前状态和管理暂存更改至关重要。