📅  最后修改于: 2023-12-03 15:00:55.124000             🧑  作者: Mango
git stash
命令可将当前修改的工作区暂时保存到堆栈(stash)中。在代码切换分支或者协作开发时,我们可能需要暂存当前工作区,以免不同分支之间的修改产生冲突。git stash
命令可以实现此目的。
当需要还原被暂存的工作区时,可以使用 git stash apply
命令。这个命令可以将指定的暂存区还原到当前分支的工作区,可以使用该命令查看被保存的修改,并将其应用到当前工作区。
在终端中使用以下命令可以将当前的修改暂存:
$ git stash save "这是一个测试"
注意:stash 操作之后,当前分支回到之前的状态。
如果有需要还原之前的修改时,可以使用以下命令:
$ git stash apply
如果需要恢复指定的 stash,则可以使用以下命令:
$ git stash apply stash@{n}
stash@{n}
:表示在 stash 堆栈中的第 n 个存储。以 Shell-Bash 为例,来演示使用 git apply stash 命令还原工作区的过程。
首先,在工作区修改 file1.txt
,并添加到暂存区:
$ touch file1.txt
$ git add .
现在,将当前工作区的修改暂存:
$ git stash save "添加了 file1.txt"
Saved working directory and index state WIP on master: 233f728 添加了 file1.txt
命令行输出了提示信息,当前修改已经被保存到 stash 中。
如果有需要确认当前的 stash 存储状态,可以使用下面的命令查看:
$ git stash list
stash@{0}: WIP on master: 233f728 添加了 file1.txt
git stash list
命令可列出当前仓库中所有的存储的 stash 记录。
在稍后需要还原修改的时候,可以执行以下命令:
$ git stash apply
此时,之前保存的修改已经被还原到了工作区。
如果当前修改与在当前分支上的其他更改冲突,则你需要手动解决冲突。冲突部分将被标注出来。
如果需要删除 stash 记录,则可以使用以下命令:
$ git stash drop
git stash
命令非常有用,在进行项目开发时可以使用它来暂存当前的修改。当需要还原修改时可以使用 git stash apply
命令来完成。如果需要查看或删除 stash 记录,可以使用 git stash list
和 git stash drop
命令来完成。