如何创建新的 Git 暂存

GitGitBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Git stash 是 Git 版本控制系统中的一项强大功能,它允许你临时保存本地更改,并在不同分支之间切换而不会丢失你的工作进度。在本教程中,你将学习如何创建新的 Git stash、应用和管理已暂存的更改,以及探索使用 Git stash 进行高效分支管理的好处。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/DataManagementGroup(["Data Management"]) git/DataManagementGroup -.-> git/stash("Save Changes Temporarily") subgraph Lab Skills git/stash -.-> lab-415013{{"如何创建新的 Git 暂存"}} end

理解 Git Stash

Git stash 是 Git 中的一项强大功能,它允许你临时保存本地更改而无需提交。当你需要在不同任务或分支之间切换,但又不想丢失已完成的工作时,这一功能特别有用。

当你暂存更改时,Git 会创建一个新的暂存条目,其中包含暂存时工作目录和索引的状态。然后,你可以稍后将暂存应用到当前分支或其他分支。

Git stash 的主要用例包括:

  1. 切换分支:当你需要切换到其他分支,但又有尚未准备好提交的本地更改时,你可以暂存更改,之后再应用它们。

  2. 试验更改:如果你正在处理某个功能,并想尝试新的内容而不丢失当前工作,你可以暂存更改,进行试验,然后再应用暂存。

  3. 清理工作目录:如果你的工作目录中有许多未跟踪或已修改的文件,你可以暂存它们,以便在执行其他 Git 操作之前清理工作区。

  4. 与他人协作:在处理共享存储库时,你可能需要从远程拉取最新更改,但又有不想提交的本地更改。在这种情况下,你可以暂存更改,拉取最新更新,然后应用暂存。

要使用 Git stash,你可以运行以下命令:

## 暂存当前更改
git stash

## 列出所有暂存
git stash list

## 应用最新的暂存
git stash apply

## 应用特定的暂存
git stash apply stash@{n}

## 删除最新的暂存
git stash drop

## 应用暂存然后删除它
git stash pop

通过理解 Git stash 的基础知识,你可以有效地管理本地更改,并在不同任务或分支之间切换而不会丢失工作。

创建新的 Git Stash

要创建新的 Git stash,可以使用 git stash 命令。此命令会将你当前的更改(包括已暂存和未暂存的修改)保存在一个新的暂存条目中。

以下是创建新的 Git stash 的方法:

## 创建新的暂存
git stash

运行此命令时,Git 会保存你当前的更改,并显示类似于以下内容的消息:

Saved working directory and index state WIP on master: 1a2b3c4 Commit message

此消息表示已创建一个新的暂存条目,并提供有关该暂存的一些信息,例如分支名称、提交哈希和提交消息。

在创建新的暂存时,你还可以使用 -m--message 选项提供自定义消息:

## 使用自定义消息创建新的暂存
git stash -m "My custom stash message"

这将使用你提供的自定义消息创建一个新的暂存条目。

如果你的工作目录中有未跟踪的文件,可以使用 -u--include-untracked 选项将它们包含在暂存中:

## 创建包含未跟踪文件的新暂存
git stash -u

这会将你的已暂存和未暂存更改以及任何未跟踪文件保存在新的暂存条目中。

通过创建新的 Git stash,你可以临时保存本地更改,并切换到不同的任务或分支而不会丢失工作。然后,当你准备好继续处理原始任务时,可以稍后应用该暂存。

应用和管理 Git 暂存

应用 Git 暂存

在创建了一个或多个 Git 暂存之后,你可以将它们应用到当前分支。应用暂存有两种主要方式:

  1. 应用最新的暂存

    git stash apply

    这会将最新暂存中的更改应用到当前工作目录和索引。

  2. 应用特定的暂存

    git stash apply stash@{n}

    n 替换为你想要应用的暂存的索引,如 git stash list 的输出所示。

当你应用一个暂存时,Git 会尝试将暂存的更改与当前工作目录合并。如果有任何冲突,你需要手动解决。

管理 Git 暂存

除了应用暂存之外,你还可以使用以下命令管理你的暂存列表:

  1. 列出所有暂存

    git stash list

    这会显示你创建的所有暂存的列表,以及它们的索引和简要描述。

  2. 删除最新的暂存

    git stash drop

    这会从暂存列表中删除最新的暂存。

  3. 删除特定的暂存

    git stash drop stash@{n}

    n 替换为你想要删除的暂存的索引。

  4. 应用一个暂存然后删除它

    git stash pop

    这会应用最新的暂存,然后将其从暂存列表中删除。

  5. 清除所有暂存

    git stash clear

    这会从暂存列表中删除所有暂存。

通过有效地管理你的 Git 暂存,你可以保持工作目录的整洁和有序,并在不丢失工作的情况下轻松地在不同任务或分支之间切换。

总结

在本教程结束时,你将对如何创建和管理 Git 暂存有扎实的理解,从而能够在浏览 Git 仓库中的不同分支时有效地保存和恢复你的本地更改。掌握 Git 暂存将帮助你简化开发工作流程,并维护一个干净、有序的代码库。