git stash 和unstash的使用操作,git unstash failed

场景如下,你正在开发需求1时,突然线上发现了一个bug,需要立即修复。需求1的代码因为不完善,也没经过测试,所以你希望针对需求1所做的修改先暂时隐藏,这样就可以使用 stash功能了。

VCS-->git -->stash

这个时候针对需求1做的修改都会隐藏掉。现在假设你处理bug完毕。需要继续开发需求,现在需要unstash

VCS-->git-->Unstash,选中你刚刚的stash,选中Pop stash。点击pop stash即可。如下图:

但是我这里遇到个问题,屏幕右下角有如下提示:

点击View them,发现是.DS_store 文件,这个我已经在.gitignore中声明忽略该文件了。所以我的localChanges中并没有该文件。

没办法,只有先修改.gitignore,不忽略.DS_store.然后执行git status 能看到两个文件被修改了

然后执行git checkout -- ../.DS_Store 即回滚 .DS_store。然后重新unstash,ok。

然后也需要回滚.gitignore

补充:git临时保存git stash命令

(1)git stash save “save message” 执行存储时,添加备注,方便查找,只有git stash 也是可以的,但查找时不方便识别。

(2)git stash list 查看stash了哪些存储

(3)git stash show 显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}

(4)git stash show -p 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p

(5)git stash apply 应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}

(6)git stash pop 命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

(7)git stash drop stash@{KaTeX parse error: Expected 'EOF', got '}' at position 4: num}̲  丢弃stash@{num}存储,从列表中删除这个存储

(8)git stash clear 删除所有缓存的stash

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • intellij idea使用git stash暂存一次提交的操作

    分享一个小技巧: 在日常开发中有时候需要切换到另外的一个分支,但在某些条件下当前的分支上存在一些文件尚未提交,这时候就需要使用到idea自带的git stash功能来"暂存"一些尚未提交的文件,待切换到另外的分支上再提交到新的分支上去. 任意打开一个项目进行演示: step1:切换到分支a step2: stash changes step3:切换到分支b,unstash 这样就能避免一些不必要的merge操作,也能够正常切换到其他的分支了. 补充:文件在IDEA中已进行Git的Com

  • 详解idea中Git的Stash Changes和UnStash Changes用法

    1,先从git上pull(拉)代码. 我们本地进行了一些代码编辑. 图上红框为新增方法 2,使用git的stash Changes功能,如下图 3,查看本地代码变化,可以看到自己新加的方法没有了,又回到了从git上pull下来的最新状态 4,查看git的UnStash Changes功能 点击上图view,可以对比代码,点击 apply stash ,可以将stash的代码恢复到本地 到此这篇关于详解idea中Git的Stash Changes和UnStash Changes用法的文章就介绍到这

  • 解决idea 暂存文件或idea切换分支代码丢失的问题

    idea切换分支时,修改过的代码文件全部不见了 找了一下问题,切换分支时,idea自动会创建暂存文件, 点开,右边View --> 即可显示暂存文件. 点击Apply Stash 即可将暂存文件应用到当前分支. 如果发现此方法还是不行,别慌,idea自动会记录当前文件的修改状态,默认保存是5天,可以自行修改配置保存时长. 即可显示此文件改动记录 补充:IDEA git 切换分支注意事项 IDEA 帮助文档提供了切换分支时的选项说明 1. 本地分支切换的时候(例如A切到B),会弹出来Restore

  • git stash 和unstash的使用操作,git unstash failed

    场景如下,你正在开发需求1时,突然线上发现了一个bug,需要立即修复.需求1的代码因为不完善,也没经过测试,所以你希望针对需求1所做的修改先暂时隐藏,这样就可以使用 stash功能了. VCS-->git -->stash 这个时候针对需求1做的修改都会隐藏掉.现在假设你处理bug完毕.需要继续开发需求,现在需要unstash VCS-->git-->Unstash,选中你刚刚的stash,选中Pop stash.点击pop stash即可.如下图: 但是我这里遇到个问题,屏幕右下

  • git stash的正确用法详解

    目录 概述 git stash 具体用法 概述 前段时间突然发现,我之前对git stash的使用都是错误的. 具体说来,我是这么使用的:在远端有新的提交,需要git pull来拉取合并时,发现本地有一些未提交的修改,功能也没实现,不适合做一次commit.这时候我执行git stash隐藏本地的修改,然后执行git pull来拉取远端的更新,在最新代码基础上重新实现stash的那些代码中的功能. 这里的问题是,重新实现stash代码中的那一步,其实完全可以用git stash pop来替代,执

  • Pycharm操作Git及GitHub的步骤详解

    项目开发中,代码管理肯定离不开git操作,Pycharm中没有复杂的命令操作,只需要进行一些简单的菜单操作就可以方便的实现版本管理,下面分别介绍下载pycharm中git的简单操作,以及在Pycharm中进行github项目的下载和上传. Pycharm操作Git 1.pycharm配置git Windows: Mac: 完成配置后,点击Test可以看到本地的git版本信息. 2.git项目clone到本地 按照如下路径,输入git仓库地址以及本地项目目录,点击clone 在弹出的密码框中输入g

  • IDEA Git Stash 使用详解

    随着公司开发人员的增加,以及多需求的并行开发,功能上线就会碍手碍脚:害怕自己没写完的代码被别人部署到线上,害怕别人代码没写完被自己部署到线上:总之功能上线之前还要和所有开发沟通,能不能部署代码?如果只是几个人的团队倒也无妨,但是开发人员多了,沟通成本就很高了.于是 Git 的分支就发挥它的作用了,本文讲解工作中使用 IDEA 进行分支的管理以及合并,以及其他 Git 使用技巧. 环境准备 为了演示,先用 IDEA 创建一个简单工程,提交到 git 远程仓库当中. dev-100 分支创建 现在接

  • git stash暂存的操作方法

    为什么我们需要它 不得不说,在知道这个命令的时,以及之后的使用中,我都超级热爱这个命令,因为它真的太好用了. 给大家说一下我使用这个命令的场景: 此时我在 feature_666 分支,非常聚精会神加持高专注地实现一个功能 666 模块,简直键盘如飞的编写代码--- 然后这时,客户反馈出一个 bug , 非常严重,必须立马解决,优先级为 0 !!! 于是,我需要去到 release 分支去 checkout 新的分支去工作了,但是 666 功能还没完成怎么办? 此时我面临着一个选择题: A:提交

  • IDEA:Git stash 暂存分支修改的实现代码

    场景: 当我们正在master分支开发新功能的时候,突然接到一个任务发现线上出现了一个紧急的BUG需要修复,由于没有打新分支做这部分新需求,这时正做到半途中....已经把本地代码修改得花里胡哨了,该怎么办,有什么办法快速解决吗? 这时Git stash这个非常实用的功能就派上用场了,将本分支的修改暂存起来. 涉及到的几个命令: 1.git status:查看工作区文件状态,列出已经修改的文件 2. git stash save '自定义描述' :暂存工作区的文件 3.git stash list

  • git stash(储藏)的用法总结

    当在一个分支的开发工作未完成,却又要切换到另外一个分支进行开发的时候,除了commit原分支的代码改动的方法外,我觉得git stash是一个更加便捷的选择. git stash(git储藏)可用于以下情形: 发现有一个类是多余的,想删掉它又担心以后需要查看它的代码,想保存它但又不想增加一个脏的提交.这时就可以考虑git stash. 使用git的时候,我们往往使用分支(branch)解决任务切换问题,例如,我们往往会建一个自己的分支去修改和调试代码, 如果别人或者自己发现原有的分支上有个不得不

  • C#/.NET使用git命令行来操作git仓库的方法示例

    我们可以在命令行中操作 git,但是作为一名程序员,如果在大量重复的时候还手动敲命令行,那就太笨了. 本文介绍使用 C# 编写一个 .NET 程序来自动化地使用 git 命令行来操作 git 仓库. 这是一篇很基础的入门文章. 最简单的运行 git 命令的代码 在 .NET 中,运行一个命令只需要使用 Process.Start 开启一个子进程就好了.于是要运行一个 git 命令,我们其实只需要这句足以: Process.Start("git", "status")

  • gitlab实践教程使用git config进行相关的配置操作

    这篇文章根据实际碰到的一个问题来介绍一下git配置相关的内容. 命令: git config 使用git config进行相关的配置操作 配置文件 git在整体上,配置文件分为三级,结合优先级相关信息如下 简单来说,优先级别离仓库越近越高,所以 项目级别 > 用户级别 > 系统级别.相同的设定同时出现时,优先级别高的会覆盖上层的配置. 配置检查 使用git config 不同的参数可以对如上三个不同的级别进行相关设定的检查 因为相同的设定有可能会产生覆盖,使用git config -l会列出g

随机推荐