idea怎么直接拉去git_我用了一条Git命令,帮助同事免去了失业的风险
开场白
人生就像一盒巧克力,你永远不知道下一颗是什么味道。
故事背景
同事昨天写了一天的代码,等到快要下班时候,要急着回家,然后拉了下代码,匆忙之中忘了提交本地代码,其中有一个类另外一个同事也做了修改,然后提交到远程仓库。
结果本地代码被pull拉去后给覆盖了,今天发现代码丢失后,同事如热锅的蚂蚁,如果代码找不回来。要重写是小事,万一因为这耽误了工作进度,可能面临失业的危机。同事虽然也有好几年开发经验,但是怎么见过这种阵仗,平常的开发都是Git commit ,pull ,push ,然后就是合并下冲突。代码被强制更新还是大姑娘上桥-头一回
于是找到了拥有多年使用git经验的我,请求我想想办法,一定要把代码给他找出来,并且给出了一顿饭的诱惑。
分析问题-复盘
按我的经验,如果没提交合并,一般都会提示提交。如果强制提交,会先保存在暂存区stash。为了稳妥起见,我让他重新模拟一遍之前的操作,当天拉代码时候,果然出现了以下提示。
由于他用的苹果图形化界面,结果直接默认了stash ,他也没有注意,结果直接把他的代码给覆盖了。
git stash 简介
git stash就可以将你当前未提交到本地(和服务器)的代码推入到Git的栈中,这时候你的工作区间和上一次提交的内容是完全一样的,所以你可以放心的修Bug,等到修完Bug,提交到服务器上后,再使用git stash apply将以前一半的工作应用回来。可以把stash区理解为一个本地仓库的缓存仓库。图解
具体步骤
- git stash list 查看暂存列表
2.git apply git stash apply stash@{$num}
默认使用最近的stash(即stash@{0})。如果要用第二个,git stash apply stash@{1}
拓展
如果要移除使用 git stash drop
idea怎么直接拉去git_我用了一条Git命令,帮助同事免去了失业的风险相关推荐
- idea怎么直接拉去git_如何将GitHub上面的项目拉取到IDEA中
上次,小喵给大家演示了一下,那么今天小喵给大家演示一下如何将GitHub上面的项目拉去到IDEA中. 一 . 获取连接 有两种情况 : 一种是项目未初始化 , 第二种是项目已初始化. 未初始化 获取连 ...
- clone远程代码 在不同电脑上git_用树莓派3搭建私有git代码仓库
0.出发点 由于项目开发的规模和复杂度越来越大,有时候需要同时多人在不同的嵌入式linux上开发代码,在没有用git管理代码和文档前,很难同步代码和文档的版本,宝贵的代码存储也没有安全感. githu ...
- commit分拆多个 git_这才是真正的Git——Git内部原理
本文以一个具体例子结合动图介绍了Git的内部原理,包括Git是什么储存我们的代码和变更历史的.更改一个文件时,Git内部是怎么变化的.Git这样实现的好处等等. TL;DR 本文以一个具体例子结合动图 ...
- idea怎么把代码放到git_在IDEA中如何初始化Git,把项目推送到Git上
在IDEA中如何初始化Git,把项目推送到Git上 登录Gitee(码云)账号,新建仓库 先按如下步骤简单新建一个仓库: 创建成功后,会出现下图中所示的原始文件: 在IDEA上的Terminal中进行 ...
- vue项目示例代码git_您应该了解的5个Git命令以及代码示例
vue项目示例代码git I've used Git for some years now, and I still find myself googling how to do some basic ...
- github 和git_学习编码时如何学习Git和GitHub
github 和git by Iago Rodrigues 通过Iago Rodrigues 学习编码时如何学习Git和GitHub (How you can learn Git and GitHub ...
- mac azure git_将Azure Data Studio与Git和GitHub集成
mac azure git In the last article, Source Control using Git in Azure Data Studio (ADS), we explored ...
- vscode 取消拉去变基_开发工具之 Git 篇
人生是一场难得的修行,不要轻易交白卷 ---胡歌 前言 计划 7.6 要完成 Git 篇,7.7 完成 VsCode 篇.昨天玩了一天,
- AndroidStudio git 提交代码,创建分支,合并分支,回滚版本,拉取代码
主要有: 提交代码,创建分支,合并分支,回滚版本,拉去代码 1 首先电脑中下载git 2 新建的项目把.git 仓库放到项目总中as 工具的右下角 会显示 Git:master 点击有一个弹框如下 然 ...
最新文章
- (五)Oracle学习笔记—— 视图
- acwing算法题--不同的数
- OVS vswitchd启动(三十九)
- 织入业务代码-ModifyService
- Spring Boot使用@Async实现异步调用:ThreadPoolTaskScheduler线程池的优雅关闭
- Python基础——timeit模块
- Log4J文件路径设置
- koa2 从入门到进阶之路 (七)
- JAX-RPC学习笔记(1)-Hello World!
- 商业计划书范文3000_凤城编写商业计划书范文模板格式
- 东方通tongweb的安装及使用(图文详细版)
- LoadRunner教程(2)-LoadRunner性能测试利器
- mpa和pis_扭矩换算mpa(压力与扭矩换算)
- java定时器定时发短信_quartz-job实现实时或定时发送短信任务(示例代码)
- IntelliJ IDEA 设置快捷键(Keymap)
- 音乐和计算机跨界融合,上海尝试音乐创新:中国传统文化与西方艺术跨界融合...
- 荣耀v40Pro参数配置曝光
- 离散数学简单复习知识点汇总
- 访问者模式Visitor
- 香港大学赵恒爽老师招收计算机视觉博士/博士后/研究助理
热门文章
- c语言ascw,VBS中的Asc/AscB/AscW和Chr/ChrB/ChrW函数之间的区别
- python分类算法的应用_07-机器学习_(lineage回归分类算法与应用) ---没用
- php正则表达式应用,PHP 正则表达式应用
- c++11中thread join和detach的区别
- java实现c#的datetime.ticks_java的Date.getTime()转换成C#的Datetime.ticks | 学步园
- java 重载 不可_深入深刻深到不能再深的理解java中的重载和重写
- 什么?你竟然还没有用这几个chrome插件?
- Java5:BigInteger、BigDecimal详解
- Swif语法基础 要点归纳(一)
- HDU 3974 Assign the task(dfs时间戳+线段树成段更新)