git stash (pycharm/vscode的gui演示)
git stash (pycharm/vscode的gui演示)
- 场景
- 代码刚写到一半,发现线上bug需要马上修改部署上线
- 此时手头的代码写一半,提交根本跑不动甚至影响原来的业务了
- 回滚就白瞎搬了好几小时的砖了
- 好的实践(git分支管理比较规范时)
- 每个功能或bug修复都从主干创建一个分支
- 开发完成后合并回主干
- 遇到上述情况时,当前分支代码保存本地(开发当前功能是从主干拉取的)
- 从主干重新拉取一个分支修改后合并
- 切换回开发到一半的分支继续开发
- 当项目很小,参与人员1-2人时,维护分支较为繁琐,只在一个分支上开发时
- 使用git stash暂存(未提交的代码放在暂存区中)
- 修复bug,部署上线
- 使用git unstash从暂存区中取出未完成代码,继续开发
- 以下结合pycharm和vscode的gui操作演示
pycharm
- 暂存当前未提交代码
点击"Git">"Uncommitted Changes">"Stash Changes..."

- Message中填入信息(用于还原选择),点击"Create Stash",就可以看到刚写的代码没掉了

在当前分支修改代码,然后提交
重新获取暂存代码
点击"Git">"Uncommitted Changes">"Unstash Changes..."

- 选择对应暂存记录,点击"Apply Stash"即可还原代码

vscode
- 暂存当前未提交代码
点击"Git"图标 > 提交界面右上角的"..." > "Stash" > "Stash"

- 在弹窗中填入暂存名称后回车

在当前分支修改代码,然后提交
重新获取暂存代码
点击"Git"图标 > 提交界面右上角的"..." > "Stash" > "Apply Stash"/"Pop Stash"
区别就是Pop会删除记录,Apply不删除,Latest是最后一次,带"..."就会弹窗选择一个

git stash (pycharm/vscode的gui演示)的更多相关文章
- Git for PyCharm
Git for PyCharm Using PyCharm's Git integration locally:http://confluence.jetbrains.com/display/PYH/ ...
- Git综合使用命令行和gui工具小结
使用Git的时候,综合使用命令行和gui工具,可以把Git用的最舒服,因此这里总结下使用gui和命令行的一些对应操作, gui中拉取:git pull origin dev_branch gui中推送 ...
- git stash命令详解
git stash命令用于将更改储藏在脏工作目录中. 使用语法 git stash list [<options>] git stash show [<stash>] git ...
- Git-命令行-使用 git stash 暂存代码
为什么我们需要它不得不说,在知道这个命令的时,以及之后的使用中,我都超级热爱这个命令,因为它真的太好用了. 给大家说一下我使用这个命令的场景: 此时我在 feature_666 分支,非常聚精会神加持 ...
- Git Stash紧急处理问题,需要切分支
在开发过程中,大家都遇到过bug,并且有些bug是需要紧急修复的. 当开发人员遇到这样的问题时,首先想到的是我新切一个分支,把它修复了,再合并到master上. 当时问题来了,你当前正在开发的分支上面 ...
- git stash 用法
git stash用于将当前工作区的修改暂存起来,就像堆栈一样,可以随时将某一次缓存的修改再重新应用到当前工作区. 一旦用好了这个命令,会极大提高工作效率. 直接举例说明: 1.准备工作,首先初始 ...
- git stash和git stash pop
git stash 可用来暂存当前正在进行的工作, 比如想pull 最新代码, 又不想加新commit, 或者另外一种情况,为了fix 一个紧急的bug, 先stash, 使返回到自己上一个comm ...
- git stash -u 添加新文件
git 提交 有新文件执行 git stash -u ------ 如果已经执行git stash,会发现有UNtracked这个单词 说明新文件没有添加进去,此时 执行 git stash ...
- 每天一命令 git stash
git stash 命令是用于保存当前进度的命令.该命令会保存当前工作区的改动.保存的改动是已经跟踪的文件的改动,对于未跟踪的改动stash是不会保存的. git stash 命令常用于分支切换的 ...
- git stash提交PR的正确步骤&git squash技术
1.git stash梳理 1.1git stash的克隆与同步 首先整理下git stash的逻辑是这样 在本地做出了新的修改,提交时显示当前的版本不是最新版本,这时就需要先pull一下自己代码仓库 ...
随机推荐
- SpringBoot 块形式的配置文件写法(简单示例)
1.配置文件写法 spring: profiles: dev quartz: auto-startup: true --- spring: profiles: local quartz: auto-s ...
- Xrdp服务安装配置实现Linux远程桌面访问以及问题处理
0x00 基础介绍 0x01 安装桌面环境 Ubuntu 系列 0x02 Xrdp 安装使用 How to Install xrdp on Ubuntu ? How to Install xrdp t ...
- 对PTA题目集1~3的总结
一.作业总结 这几次的PTA作业主要考察我们对Java语言中的字符串的输入和输出.转换.有关它们的方法的运用和相关的一些运算,还有我们对题目需求的了解和书写代码的规范:其次还有强化我们对"类 ...
- 基于excel的自动化框架
设定项目文件大致结构 atp/: 项目名 conf/:存放配置文件 data/:存放sql文件 lib/: 存放项目的所有源代码. logs/:存放日志文件 uploads/:存放下载的文件 star ...
- Postman配置多环境请求地址
在使用Postman测试接口时,一个项目往往有多个环境(测试.正式等),请求不同环境的接口一般只是IP和端口不一样. 这时候我们可以定义多个环境变量,在接口地址中进行引用. 一.添加环境变量 1.点击 ...
- DP7361 是一款立体声六通道线性输出的数模转换器-兼容CS4361
DP7361 是一款立体声六通道线性输出的数模转换器,内含插值滤波器.Multi-Bit 数模转换器.模拟输出滤波器,支持主流的音频数据格式. DP7361 片上集成线性低通模拟滤波器和四阶Multi ...
- python图片转base64、base64转图片
#图片转base64 import base64 with open("./1.png","rb") as f:#转为二进制格式 base64_data = b ...
- 配置代码片段问题 Invalid characters in string. Control characters must be escaped.
在使用代码片段时报错 Invalid characters in string. Control characters must be escaped. " somethings" ...
- Elasticsearch 实战
需求 假设现在有这么一个需求,系统接了很多的报文,需要提供全文检索,为了简化,报文目前只有类型,流水号,内容这三个字段. 索引设计 建立msg索引,映射规则如下 PUT /msg { "ma ...
- Qt多线程编程之QThreadPool 和 QRunnable使用
说到线程通常会想到QThread,但其实Qt中创建线程的方式有多种,这里主要介绍其中一种QRunnable,QRunnable和QThread用法有些不同,并且使用场景也有区别.要介绍QRunnabl ...