IntelliJ IDEA 中的 Git Stash 与 Shelve

本文将在使用 IntelliJ IDEA 时区分 git stashgit shelve。当我们想在工作时在多个任务之间切换并稍后返回它们时,这两者就会出现。

IntelliJ IDEA 允许我们在不丢失进度的情况下处理不同的功能。我们可以储存或搁置。

两人有很多共同点。生成和应用补丁时会产生很大的不同。

当我们存储时,Git 会生成补丁,我们可以使用 IntelliJ IDEA 或其他 IDE 来应用补丁。另一方面,当我们搁置时,补丁会在 IntelliJ IDEA 中生成和应用。

stash 将存储所有未提交的更改,而搁置允许我们选择搁置的内容。

在 Git 中搁置更改

搁置更改时,我们会暂时存储未提交的更改,以便以后需要切换到不同的任务时处理它们。IntelliJ IDEA 允许我们搁置单独的文件或所有更改。

你可以根据需要多次应用生成的补丁。这是典型的工作流程。

  1. 在 IDE 上,我们将导航到提交工具。到达那里后,我们可以右键单击要搁置的更改列表或文件,然后选择 Shelve Changes

    IntelliJ IDEA 中的 Git Stash 与 Shelve

  1. 接下来,我们将查看我们的列表,在 Commit Message 中为我们的架子命名,然后单击 Shelve Changes 保存架子。

另一种方法是使用 silent 选项。IDE 有一个 Shelve Silently 选项,允许我们在不显示对话框的情况下搁置。

在 Git 中取消搁置更改

要取消搁置更改,请按照以下步骤操作。

  1. 导航到 IDE 上的 Shelf 选项卡并选择文件或更改你需要取消搁置的列表。

  2. 从菜单中点击 Unshelve,然后选择你想要恢复搁置更改的列表。如果你不想将它们恢复到现有的更改列表,也可以创建一个新列表。

    请记住将新列表标记为 active

  3. 你也可以使用 Unshelve Silently 图标并将更改移动到活动更改列表。

在 Git 中存储更改

存储只是当前工作目录和 HEAD 提交之间差异的记录。你可以根据需要随时应用分支补丁。

请记住:

  1. 应用 stash 时可能会遇到冲突。
  2. 你不能将存储应用到包含未提交更改的工作副本。

按照以下步骤使用 IntelliJ IDEA 存储更改。

  1. 导航到 Git > 未提交的更改 > 存储更改
  2. 选择正确的目录,切换到正确的分支。
  3. Message 字段中简要描述存储总是好的。
  4. 单击创建存储

在 Git 中应用存储

要应用存储,请按照下列步骤操作。

  • 导航到 Git > Uncommitted Changes > Unstash Changes
  • 选择正确的目录并切换到正确的分支。
  • 选择存储,单击查看查看应用补丁后会更改哪些文件,然后选择弹出存储以在应用补丁后丢弃补丁。
  • 你可以通过在 As new branch 字段中键入分支名称来创建新分支并应用补丁。