问题标签 [git-stash]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
24 回答
412213 浏览

git - 如何在 Git 中恢复丢失的存储?

我经常使用git stashandgit stash pop来保存和恢复工作树中的更改。昨天我在我的工作树中进行了一些更改,我已经隐藏并弹出了这些更改,然后我对我的工作树进行了更多更改。我想回去查看昨天隐藏的更改,但git stash pop似乎删除了对相关提交的所有引用。

我知道如果我使用git stash然后.git/refs/stash 包含用于创建存储的提交的引用。并且.git/logs/refs/stash 包含整个存储。但是那些参考文献都没有了git stash pop。我知道提交仍在我的存储库中的某个地方,但我不知道它是什么。

有没有一种简单的方法可以恢复昨天的存储提交参考?

请注意,今天这对我来说并不重要,因为我每天都有备份,并且可以返回到昨天的工作树来获取我的更改。我问是因为必须有更简单的方法!

0 投票
4 回答
18576 浏览

git - 为什么每个分支的 git stash 不是唯一的?

我想它允许将更改从一个分支移动到下一个分支,但这就是樱桃采摘的目的,如果您没有提交更改,也许您不应该移动它们?

我有时在错误的分支上应用了错误的存储,这让我想知道这个问题。

0 投票
4 回答
39412 浏览

git - 如何使 git merge 处理对我的工作树的未提交更改?

我和一位同事目前都在 master 分支上工作。我的工作树中有一些我不想提交的代码(调试语句等)。现在,如果他对其中一些相同的文件进行更改,我将无法合并它们:

来自颠覆背景,我习惯于在我从存储库中提取更改时自动合并我的工作树,如果有冲突,我会手动解决它们。

我发现在 git 中执行此操作的最快方法是:

本质上,删除我未提交的更改,进行合并,然后重新应用更改。如何告诉合并自动将我的工作树与我试图引入的更改合并?

0 投票
18 回答
702927 浏览

git - 您如何存储未跟踪的文件?

我对一个文件进行了更改,加上一个新文件,并希望在切换到另一个任务时使用 git stash 将它们收起来。但是 git stash 本身只存储对现有文件的更改;新文件保留在我的工作树中,使我未来的工作变得混乱。如何存储这个未跟踪的文件?

0 投票
13 回答
242727 浏览

git - 如何反向应用存储?

我有一个小补丁保存在我的 git stash 中。我已经将它应用到我的工作副本中,使用git stash apply. 现在,我想通过反向应用补丁来取消这些更改(有点像git revert会做的事情,但针对存储)。

有谁知道如何做到这一点?

澄清:我的工作副本还有其他变化。我的特殊情况很难描述,但您可以想象隐藏中的一些调试或实验代码。现在它在我的工作副本中与其他一些更改混合在一起,我想看看有没有来自存储的更改的效果。

stash 目前似乎不支持此功能,但 agit stash apply --reverse将是一个不错的功能。

0 投票
9 回答
309958 浏览

git - 如何从 git stash 中提取单个文件(或对文件的更改)?

是否可以从 git stash 中提取单个文件或文件的差异而不弹出 stash 变更集?

0 投票
11 回答
53896 浏览

git - Git stash:“不能应用于脏工作树,请暂存您的更改”

我正在尝试应用我之前存储的更改git stash pop并收到消息:

关于如何处理的任何建议?

0 投票
9 回答
820756 浏览

git - 将现有的、未提交的工作移动到 Git 中的新分支

我开始了一些新功能的工作,在编写了一些代码之后,我决定这个功能应该在它自己的分支上。

如何将现有未提交的更改移动到新分支并重置我当前的?

我想重置我当前的分支,同时保留新功能的现有工作。

0 投票
12 回答
92322 浏览

git - 是否可以将 git stash 推送到远程存储库?

在 git 中,是否可以创建一个存储,将存储推送到远程存储库,在另一台计算机上检索存储,然后应用存储?

或者是我的选择:

  • 创建补丁并将补丁复制到另一台计算机,或
  • 创建一个次要分支并将未完成的工作提交到该分支?
0 投票
7 回答
555930 浏览

git - git stash 应用版本

我有 2 个分支:master | 设计

在设计工作我做了一个藏匿并切换到大师,做了一些调整。切换回设计并做了一个stash apply只是丢失了我在设计分支中的所有更改。

我希望我所有的工作都在一个藏匿处,因为我没有清除或删除这些。

如果我做一个存储列表,我会得到 4 个结果:

如果我尝试git stash apply f2c0c72我会收到一个错误:

如何应用特定的存储?