很多时候,我需要在进行实验性更改之前拍摄当前工作目录的快照作为备份。这就是我所做的。
git stash
git stash apply
但是我使用了一些监听磁盘更改的应用程序,它们会导致不必要的行为。我想在第一步中不清理本地工作目录来执行相同的操作。
它可以是一行代码或多行字符串,因为我将为其创建一个函数。
奖励:如果它也保留当前的暂存/非暂存区域,那就太好了。
最佳答案
尝试:
git stash store $(git stash create)
引擎盖下git stash [push]
是:
- 创建一个存储索引+工作树内容的提交,
- 将提交存储在名为
refs/stash
的引用中(之前的存储实际上是该引用的引用日志), - 清理磁盘上的文件。
如果你看the docs ,还有其他子命令 git stash
:
-
create
按照步骤 1 中的方式创建提交,并在 stdout 上输出其 sha -
store
执行第 2 步
(第 3 步是 git reset --hard HEAD
)
关于git stash 和 git stash 应用时无需立即清除工作目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65331419/