git切换分支合并后再切回原来分支导致没有提交的代码丢失
git切换分支合并后再切回原来分支导致没有提交的代码丢失
前言
在企业开发中,总会需要用远程仓库来管理整个团队的项目代码,git是我们常用的代码提交工具,虽然就我个人而言,在开发的过程中就只用到几个简单的命令,但也要熟练运用才行,不然就会造成一些耽误时间的麻烦事。 有一次我就因为dev提交代码然后切换到uat合并,再切回dev时发现有些没提交的代码,像测试类、没完成的半成品或是一些配置文件都没了,我直接裂开。
解决方法
假设目前我所在的分支是dev(一般为开发分支,这里只是举个例子,我的公司开发时会从dev再搞个自己的任务分支出来),然后写好代码后提交有用的代码,像测试类这些一般都不会提交到仓库。
我会先用IDEA的提交功能选择要提交的内容:
然后才打开Git Bash,输入
git stash
//缓存一下
其实如果你不缓存就切换分支,git也会提示让你缓存的
然后切换分支到uat
git checkout uat
因为我缓存过一次了,所以会提示本地没有变化要保存
再用merge合并dev提交的代码:
git merge dev
如果报错要你git pull
从远程仓库下载代码,很有可能是有人更新了仓库的代码,你现在的版本对不上号,所以要先从远程仓库下载最新版本的代码才能继续合并操作
合并完成后就可以把更新的代码PUSH到远程仓库了
git push
完成后,这个时候切换回dev就会发现没提交的代码都没啦,然后就用
git stash pop
这样就能导出刚才的缓存,消失的代码又回来惹
这大概就是我每天几乎都在做的git操作
以前总觉得图形化挺好的,但是如果每天都用命令行,真的会觉得命令行比点点点快很多
结尾
请问有解决你的问题吗,如果方法有问题或者不符合您的需求请评论或私信我,我会加以改正,我也希望我的文章不要浪费大家宝贵的时间
git切换分支合并后再切回原来分支导致没有提交的代码丢失相关推荐
- Git分支 查看branch 创建 切换checkout 合并merge(先切回主分支) 删除branch -d 推送push
Git分支 分支的概念 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN.如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时 ...
- 话机耳机模式进入保持状态下每隔1分钟会切换到免提模式后再切回耳机模式
式后再切回耳机模式 2022-03-03 [描述] 在用耳机模式进行通话保持时,1分钟后耳机模式会跳到免提模式1s后再跳回到耳机模式,是什么原因? [原因] 在通话保持时,因为话机会有保持提示音&qu ...
- git版本回退后,导致已经add的代码丢失
git add . 后把代码提交到了暂存区,但是git status后看到很多是之前写的,不想提交,又不想一个一个撤回,想着版本回退一下,结果导致新写的功能代码直接全部丢失,无奈只能看有没有方法,经过 ...
- Egret eui.TextInput组件输入后未清掉焦点,微信浏览器切换后台再切回,点击会一直唤醒输入法的Bug
如题,碰到的情况呢,是egret发布为HTML5,在点击eui.TextInput组件进行输入时,如果切换到后台,再切回后,除非再点击其他eui.TextInput组件,不然点击屏幕其他地方,都会不停 ...
- 现在明白Git的分支操作后再看普罗米修斯那么多分支就好理解了
现在明白Git的分支操作后再看普罗米修斯那么多分支就好理解了 确实以后自己也没必要单独建一个仓库,就新建一个分支就可以了. .
- 1git命令的使用,查看git仓库状态,添加文件到git跟踪,git提交,查看git分支,查看git仓库日志信息,切换git分支,解决git分支合并后出现冲突的问题
1新建一个存储git的文件夹,命令是: toto@toto-K45VD:~$ mkdir gitfolder 2初始化一个git仓库,命令是: toto@toto-K45VD:~$cd gitfold ...
- war3 win8系统 在11对战平台 切屏后 无法切回游戏
换了win8 系统后,在11平台玩war3游戏,切屏后,总是无法切回游戏 第一步 更新显卡驱动,不要用win8自带的显卡驱动 第二步 去掉 启动11新的游戏载入界面 第三步 上两步操作后,war3的分 ...
- SVN 回滚(撤回)提交的代码
一. TortoiseSVN -> Show log 二. 注意:步骤二只是让你本地的代码回滚(撤回)到你未提交前的一个版本,并不会更新到SVN服务器上,也就是说你的同事依然能更新到你错误提交的 ...
- 关于华为HS8145V 进入华为界面后 再刷回电信界面
方法如下,#字后是输入的内容:0 y: u1 o' _" X: P& V0 |* ~ telnet 192.168.1.1 n( ~0 K, J0 h5 U Login:root ...
最新文章
- flutter 键盘遮挡输入框问题_flutter插件推荐之 keyboard_avoider - 解决输入时的键盘遮挡问题...
- 如何恢复默认域策略和默认域控制器策略
- Sublime Text 3 python和Package Control配置方法
- linux存储库rep 61082,安装informatic过程中的错误
- linux shell 中文件编码查看及转换方法
- PLSQL 循环游标 cursor loop fetch into
- lcy mysql爆破_Lcy’s Blog
- androidpn的学习研究(六)Androidpn-server的Mina编码和解码解析过程
- 机器学习代码实战——KMeans(聚类)
- java 实现mvcc_HBase中MVCC的实现机制及应用情况
- WebSocket入门使用教程
- netperf的安装、性能测试、参数、启动报错的坑、实例
- HTML iframe标签用法案例详解
- 双因素方差分析(R)
- win7显示u盘efi分区_Win7下查看U盘中的EFI盘方法
- 全球及中国钢铁行业投资产量趋势及营销盈利模式研究报告2021版
- Preliminary Design Review(初步设计评审(回顾))
- 图像处理基础与理解 随笔一 图像的内插
- win10切换输入法快捷键_软件快捷键失灵,可能是你没有安装美式键盘
- 在Win7中将我的电脑快捷方式放入任务栏
热门文章
- 利用forestplot包绘制效应量亚组分析的类森林图
- HTML/网站一键打包APK工具(html网页打包安卓APP应用)
- 初创公司自动驾驶出租车商业化丧钟已响?Drive.ai“卖身”的背后
- Win10能更逆天?17款系统增强小工具推荐
- 美容院如何设计管理会员卡?
- 工厂ERP系统如何改善生产管理流程?六大功能须知
- Linux的特殊权限(Suid、Sgid、Sbit 详解)
- 如何用mysql建立数据库_如何用MySQL创建数据库?详细教程看这里!
- mysql中家庭关系_家庭数据库是什么
- HFSS学习笔记——Vivaldi天线仿真(一)