git stash 命令详解

git stash 是 Git 版本控制系统中的一个强大功能,允许你临时保存(或者“藏匿”)你的更改,然后你可以在任何时候重新应用这些更改。这是非常有用的,特别是当你需要切换分支去工作其他任务,但你当前的工作进度还不足以提交一个完整的commit时。

以下是一些基本的 git stash 命令及其用法:

  • 保存更改
git stash

这个命令会保存你的工作进度。它会存储所有已跟踪的文件的更改和暂存的更改,但不包括未跟踪的文件(新文件)。

  • 保存更改(包括未跟踪的文件)
git stash -u

或者

git stash --include-untracked

这个命令除了保存已跟踪文件的更改外,还会保存工作目录中的新文件(即未跟踪的文件)。

  • 列出保存的stash
git stash list

这个命令会显示所有的stash列表。

  • 应用最近的stash
git stash apply

这个命令会应用最近的stash到当前工作目录,但不会从stash列表中删除它。

  • 应用指定的stash
git stash apply stash@{n}

将特定的stash应用到当前工作目录,其中n是你想要应用的stash的索引。

  • 删除最近的stash
git stash drop

这个命令会删除最近的stash。

  • 删除指定的stash
git stash drop stash@{n}

删除特定的stash。

  • 应用并删除最近的stash
git stash pop

这个命令会应用最近的stash,并从stash列表中删除它。

  • 清除所有stash
git stash clear

删除所有保存的stash。

git stash 是一种手动保存当前工作状态的方式,并且git stash作为一个栈管理这些状态,你可以多次执行git stash命令来保存不同时间点的工作状态,然后可以选择性地重新应用它们或者删除。这使得在不同分支或任务之间快速切换成为可能,而不会丢失未完成的代码更改。

你可能感兴趣的:(git)