首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在"git stash save --all“之后运行"git stash apply”,不会恢复跟踪的文件,而只恢复未跟踪的文件

在运行"git stash save --all"命令后,该命令会将所有的修改(包括已跟踪和未跟踪的文件)保存到一个临时的存储区(stash)中。而当我们运行"git stash apply"命令时,它会尝试将之前保存的修改应用回当前的工作目录。

然而,根据git的文档说明,"git stash apply"命令默认只会恢复已跟踪的文件,而不会恢复未跟踪的文件。这是因为未跟踪的文件在git中没有被版本控制,所以git不会自动将其恢复。

如果我们想要同时恢复已跟踪和未跟踪的文件,可以使用"git stash apply --all"命令。这个命令会将之前保存的所有修改都应用回当前的工作目录,包括已跟踪和未跟踪的文件。

总结起来,"git stash save --all"命令用于保存所有的修改到stash中,包括已跟踪和未跟踪的文件。而"git stash apply"命令默认只会恢复已跟踪的文件,如果想要同时恢复已跟踪和未跟踪的文件,可以使用"git stash apply --all"命令。

腾讯云相关产品和产品介绍链接地址:

  • 代码托管服务:腾讯云开发者工具 - https://cloud.tencent.com/product/codex
  • 云原生应用托管:腾讯云容器服务 - https://cloud.tencent.com/product/tke
  • 云存储服务:腾讯云对象存储 - https://cloud.tencent.com/product/cos
  • 物联网平台:腾讯云物联网套件 - https://cloud.tencent.com/product/iot-suite
  • 人工智能服务:腾讯云人工智能 - https://cloud.tencent.com/product/ai
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Git-stash用法总结

git stash用法 1. stash当前修改 git stash会把所有提交修改(包括暂存和非暂存)都保存起来,用于后续恢复当前工作目录。...added number to log 使用git stash apply命令时可以通过名字指定使用哪个stash,默认使用最近stash(即stash@{0})。...如果尝试应用变更是针对一个你那之后修改过文件,你会碰到一个归并冲突并且必须去化解它。...暂存跟踪或忽略文件 默认情况下,git stash会缓存下列文件: 添加到暂存区修改(staged changes) Git跟踪但并未添加到暂存区修改(unstaged changes) 但不会缓存一下文件...: 工作目录中新文件(untracked files) 被忽略文件(ignored files) git stash命令提供了参数用于缓存上面两种类型文件

2.2K10

Git 不要只会 pull 和 push,试试这5条高级提效命令!

基本用法 # 存储当前工作现场 git stash save "修 bug 之前中断点" 这个命令会把你当前改动保存起来,包括工作区和暂存区内容。...# 恢复之前存储工作现场 git stash pop 恢复刚才改动,pop 命令会把存储改动应用到当前分支,并从 stash 列表中删除。...要是你不想删,可以用 git stash apply。...进阶玩法 # 存储工作区改动,不包含暂存区 git stash save --keep-index "仅存储工作区改动" 这个命令就比较灵活了,适合一些特殊场景,比如你暂存了一部分改动,但还没提交...# 存储跟踪文件 git stash save -u "包含跟踪文件改动" 一般情况下,stash 不会存储跟踪文件,用这个命令可以把这些文件也一并保存起来。

9010
  • 7.3 Git 工具 - 储藏与清理

    将新储藏推送到栈上,运行 git stashgit stash save: $ git stash Saved working directory and index state \ "WIP...文件改动被重新应用了,但是之前暂存文件却没有重新暂存。 想要那样的话,必须使用 --index 选项来运行 git stash apply 命令,来尝试重新应用暂存修改。...status -s M index.html 另一个经常使用储藏来做事情是像储藏跟踪文件一样储藏跟踪文件。...默认情况下,git stash 只会储藏已经索引中文件。 如果指定 --include-untracked 或 -u 标记,Git 也会储藏任何创建跟踪文件。...如果你改变主意了,你也不一定能找回来那些文件内容。 一个更安全选项是运行 git stash --all 来移除每一样东西并存放在栈中。

    74640

    git stash用法 || git pull时候发生冲突解决方法之“error: Your local changes to the following files would be

    1. stash当前修改 git stash会把所有提交修改(包括暂存和非暂存)都保存起来,用于后续恢复当前工作目录。...added number to log 使用git stash apply命令时可以通过名字指定使用哪个stash,默认使用最近stash(即stash@{0})。...如果尝试应用变更是针对一个你那之后修改过文件,你会碰到一个归并冲突并且必须去化解它。...暂存跟踪或忽略文件 默认情况下,git stash会缓存下列文件: 添加到暂存区修改(staged changes) Git跟踪但并未添加到暂存区修改(unstaged changes) 但不会缓存一下文件...使用-u或者--include-untracked可以stash untracked文件。使用-a或者--all命令可以stash当前目录下所有修改。

    82930

    常用Git Tips

    :信息查看 查看上次提交之后暂存文件 git diff 查看准备用于提交暂存了修改文件 git diff --cached 显示所有暂存与暂存文件 git diff HEAD 查看最新文件版本与...保存当前追踪文件修改状态不提交,并使得工作空间恢复干净 git stash 或者 git stash save 保存所有文件修改,包括追踪文件 git stash save -u 或者 git...stash save --include-untracked Apply:应用 应用任何Stash不从Stash列表中删除 git stash apply 应用并且删除Stash...树 git log --pretty=oneline --graph --decorate --all 或者 gitk -all 查看所有分支1不在分支2中提交 git log Branch1 ^...重置HEAD到第一次提交 git update-ref -d HEAD 丢弃自某个Commit之后提交,建议私有分支上进行操作。

    69750

    Git学习总结

    支付功能虽然没有开发完成,但是另一条分支上,所以产品上线和功能开发完全不受影响。这才是分布式开发高效模式。 git 中,工作目录下面的所有文件都不外乎这两种状态:已跟踪跟踪。...已跟踪文件是指本来就被纳入版本控制管理文件,在上次快照中有它们记录,工作一段时间后,它们状态可能是更新,已修改或者已放入暂存区。所有其他文件都属于跟踪文件。...,但是,我们想恢复之后教新版本怎么办?...然后 checkout 过去修改,就能够达到保存当前工作区,并及时恢复作用。 注意这里由于 stash 了一次所以要使用 pop,具体你存放了多少。...,恢复时候,先用 git stash list 查看,然后恢复指定 stash,用命令: git stash apply stash@{0} 配置文件 配置 Git 时候,加上 —global

    44140

    10 个迅速提升你 Git 水平提示

    all- 显示所有分支历史记录 把这些选项组合起来之后,输出看起来会像这样: ? 5....git reflog则列出了head曾经指向过一系列commit。要明白它们存在于你本机中;不是你版本仓库一部分,也不包含在push和merge操作中。...如果你想要解除stash并且恢复提交变更,你可以进行apply stash: git stash apply 屏幕截图中,你可以看到每个stash都有一个标识符,一个唯一号码(尽管在这种情况下我们只有一个...这里你可以看到丢掉提交。你可以通过运行 git show [commit_hash] 查看提交之后改变或者运行git merge [commit_hash]来恢复到之前提交。...如果你一个分支中解决了它,你可以使用cherry-pick命令把它commit到其它分支上去,不会弄乱其他文件或commit。 让我们来设想一个用得着它场景。

    75140

    Git 进阶高频操作

    --all 选项将收集所有跟踪文件以及 .gitignore 和 排除文件中明确忽略文件。...# 更推荐对 stash 加一些注释 `git stash save 'message'` `git stash save --include-untracked 'message'` `git stash...save --all -untracked 'message'` Gitstash内容存在某个地方了(包含了工作区 和 暂存区内容),但是需要恢复一下,有两个办法: git stash apply...恢复,但是恢复后,stash内容并不删除,你需要用 git stash drop来删除; 另一种方式是 git stash pop,恢复同时把 stash 内容 pop 出去....清空所有 stash 信息 $ git stash clear 要用其他更基础 Git 命令来达到相同效果,需要手动创建一个新分支,新分 支上提交所有修改,之后回到之前分支继续工作,最后把你保存分支状态恢复到新工作目录

    70920

    git 相关

    可以使用 **git stash save ‘message’**添加一些注释 说明:stash是本地不会通过git push 命令上传到git server上。...2-3 git stash pop 恢复之前缓存工作目录,且将缓存堆栈中第一个stash删除 git stash apply会将缓存区第一个stash应用到工作目录,不会删除相应stash...暂存跟踪或忽略文件 git stash默认不会缓存在工作目录中文件、被呼噜文件。...git stash 命令提供了参数用户缓存上面两种类型文件,使用 -u可以stash untrakced文件。使用 -a可以stash所有的文件。...三、一些其它操作 3-1 reset 有时候,我们本地 git add && git commit -m ‘’ 之后,我们想要撤回commit,这个时候可以使用 git reset --soft

    23350

    git必知必会

    git checkout [file] # 恢复暂存区指定文件到工作区 # --patch还可用于选择性地丢弃每个被跟踪文件部分。...git add . && git stash # 将新储藏推送到栈上 git stash save 'message' # 储藏修改,并留下stash信息 # -p(或-patch)允许交互选择要提交每个跟踪文件各个部分...这样每个提交包含相关更改。 git stash -p # 默认情况下,当存储时,不包括跟踪文件。 为了更改该行为并包含这些文件,您需要使用-u参数。...还有-a(-all)可以完全存储跟踪和忽略文件,这可能是您通常不需要东西。...git stash -u git stash list # 查看栈中所有暂存 git stash apply # 恢复复对应编号暂存到工作区,如果不指定编号为栈顶,注意:这些暂存还在栈中

    96620

    Git 一些事

    文件层面上,不会移动HEAD指针,也不会切换到其他分支上,只是更改workspace,不是stage。...revert 文件层面 (然而并没有) 代码暂存之Stash git stash会把所有提交修改(包括暂存和暂存)都保存起来,用于日后恢复当前工作目录 保存一个不必要但日后又想查看提交 切换分支前先暂存...使用git stash apply命令可以通过名字指定那个stash,默认指定最近stash@{0}) 3....changes ) Git跟踪但并未添加到暂存区修改(unstaged changes) 但不会缓存: 工作目录中新文件(untracked files) 被忽略文件(ignored files...# 推送所有分支到远程仓库 $ git push origin --all 撤销 # 恢复暂存区指定文件到工作区 $ git checkout file ​ # 恢复某个commit指定文件到暂存区和工作区

    11.5K20

    如何使用 Git:参考指南

    检查 Git 存储库状态,包括添加暂存文件和暂存文件git status 要暂存修改后文件,请使用该 add命令,您可以提交前多次运行该命令。...要提交暂存文件,您将 commit使用有意义提交消息运行该命令,以便您可以跟踪提交: git commit -m "Commit message" 您可以通过一步提交来压缩暂存所有跟踪文件git...无论文件重命名如何,这都遵循文件git log --follow my_script.py 显示一个分支上不是另一个分支上提交。...显示有关特定存储信息: git stash show stash@{0} 要将当前存储中文件从存储中取出,同时仍保留存储,请使用 applygit stash apply stash@{0}...请注意,某些存储库可能会使用 master不是 main: git rebase upstream/main 恢复和重置 您可以使用 来恢复对给定提交所做更改 revert。

    1.3K30

    Git 知识总结

    (Untracked):追踪文件拉取命令  git fetch 是安全拉取代码命令,仅拉取最新代码,不会合并到当前分支,不会修改到工作目录文件。...fetch 之后远程跟踪分支 origin/ 会更新到最新。  git pull 是拉取代码且合并到当前分支命令,会自动合并代码,会修改到工作目录文件。...git merge --no-commit 合并冲突时使用,会合并冲突文件,但不会自动 commit。便于提交前人工检查。  ...#存储工作现场git stash#存储工作现场,并指定名称git stash save "work1"#查看 stash 列表git stash list#恢复最近一个工作现场git stash pop...#恢复指定工作现场git stash apply stash@{0}#删除指定工作现场git stash drop stash@{0}#删除所有工作现场git stash clear查看历史记录#查看提交历史

    19010

    【技巧】git stash好,切换分支随便搞

    前言缘由git stash不会搞,走到哪里都拉倒事情起因:大家好,我是JavaDog程序狗最近翻看公众号评论时,发现文章【规范】Git分支管理,看看我司是咋整本狗回复留言时,发现小伙伴对于切换分支有所疑惑...等你忙完手头事情,回到原来工作,你只需运行 git stash pop 或者 git stash apply,你之前工作就会被“解包”,恢复到你离开时状态,你可以接着做原来工作了。...你只需要运行 git stashGit 就会帮你把所有提交修改都“打包”起来,放到一个安全地方(我们称之为 stash),然后让你工作区变得干净,就像你刚从仓库检出代码一样。...清理工作目录:Git 会将你工作目录恢复到最近一次提交状态,清除所有提交更改。...当你需要切换分支或进行其他操作,而又不想丢失当前正在进行工作时,git stash 可以帮助你将这些更改“打包”并保存起来,以便之后可以恢复到之前工作状态。

    39821

    高频使用 Git 命令

    # 缓存当前工作区内容到stashName, save 这个现在不怎么推荐用,图方便也能用 # -a|--all: 除了跟踪文件,其他变动文件都会保存 # -u|--include-untracked...:包括没有添加到暂存区文件 git stash save stashName git stash -u save stashName # 现在基本推荐用 push,因为有 pop,语义上和维护上更清晰...当然这个时间回溯也本地有用,你推送到远程分支破坏性改动,该凉还是得凉。...# --abort : 完全放弃 pick,恢复 pick 之前状态 # --quit: 冲突自动变更,冲突不要,退出这次 pick # 这几个状态跟变基差不多,解决冲突继续,跳过处理,放弃这次...pick,不输出错误 复制代码 git rm 这个命令版本用比较最多姿势是为了重新索引.gitignore 范围 # 删除某个文件索引 # --cache 不会删除硬盘中文件,只是 git

    68030

    关于Git 分支基础知识一些笔记

    即便有被跟踪但是没有提交文件会被自动覆盖掉,如果是切换到一个较旧分支,你工作目录会恢复到该分支最后一次提交时样子。 「如果Git不能干净利落地完成这个任务,它将禁止切换分支。」...文件改动被重新应用了,但是之前暂存文件(add)却没有重新暂存。想要那样的话,必须使用--index选项来运行git stash apply命令,来尝试重新应用暂存修改。...默认情况下,git stash只会贮藏已修改和暂存跟踪文件。...index file HEAD is now at 1b65b17 added the index file $ git status -s $ 然而,贮藏中包含跟踪文件仍然不会包含明确忽略文件...一个更安全选项是运行 git stash --all 来移除每一样东西并存放在栈中。 你可以使用git clean命令去除冗余文件或者清理工作目录。

    40550

    Git -- Stash

    git stash save git stash 可以不加save参数, 因为执行git stash 默认就带着save参数. 可以看到没有需要commit变化了....追踪文件依然可以看到: 现在把保存恢复: git stash apply: 然后删除这个stash: 现在有几种可选做法: 1. 可以把追踪文件添加到staging 区. 2....或者你仍想把这个追踪文件保存起来, 那么可以使用git stash 加参数, 下面就做这个: git stash -u.  现在就是clean working directory了....然后编辑另一个文件, 然后commit: 然后我apply之前stash, 这次我将使用一个更直接命令: git stash pop 它相当于这两个命令: git stash applygit...查看某个stash: git stash show stash@{1}. 具体恢复某一个stash: git stash apply stash@{1}.

    81280

    Git常见操作命令大全,程序员必备技能

    git config --global user.name "你Git提交昵称"# 邮箱可以随便输入,不会做校验,但推荐填写你代码托管平台对应账号邮箱,# 这样能够统计你提交记录git config...git log --graph --oneline --all# 图形化显示所有分支提交日志及每次提交变更内容git log --graph --patch --all4、显示提交信息git show...git stash# 查看暂存区列表git stash list# 恢复暂存区最近记录git stash apply# 恢复暂存区指定记录git stash apply stash@{n}# 暂存区申请使用时...,出现冲突,将冲突解决后信息同步到暂存区git stash apply --index# 删除指定暂存区git stash drop stash@{0}# 恢复并删除最近一次暂存区git stash...推荐使用Git来操作文件或者目录,不是使用shell命令,这样可以保证Git完整记录,也方便追溯、回退。

    9321

    45个 GIT 经典操作场景,专治不会合代码

    $ git stash -p # Select all of the snippets you want to save $ git reset --hard $ git stash pop 或者, stash...$ git stash -p # Select all of the snippets you don't want to save $ git stash drop 分支(Branches) 我从错误分支拉取了内容...首先你可以查看你stash记录 $ git stash list 然后你可以apply某个stash $ git stash apply "stash@{n}" 此处, 'n'是stash栈中位置...跟踪文件(Tracking Files) 我只想改变一个文件名字大小写,不修改内容 (main)$ git mv --force myfile MyFile 我想从Git删除一个文件,但保留该文件...基本上, 每次HEAD改变, 一条新记录就会增加到reflog。遗憾是,这只对本地分支起作用,且它跟踪动作 (例如,不会跟踪一个没有被记录文件任何改变)。

    1.7K40
    领券