文档章节

git 本地提交未Push 自动切到其他版本的解决姿势

徐昊
 徐昊
发布于 2016/11/03 12:18
字数 570
阅读 4
收藏 0

原文链接请标明:
http://blog.csdn.net/u011974987/article/details/52913925
本文出自:【stromxu的博客】
欢迎访问我的博客,增加点儿人气~~Xuhao’s Blog


现象描述:

我在现有的分支上进行修改代码,使用git提交本地代码后,SourceTree上面没有记录,我就纳闷了,我原本以为我提交到其他项目了,仔细查看了几个项目的提交记录也都没有,于是退出SourceTree,在打开这个项目还是没记录,并且最新修改的分支在两个版本之前的Develop v2.2.2分支(这个我记得我是在最新的分支上开发的,不排除我在其他分支上进行开发的情况),不过这个都不是事儿,怎么恢复修改的代码到最新的分支上面呢?下面提供解决方案~~

解决方案:

  1. 打开gitbash 命令行;
  2. 输出git log 查看不到提交历史的历史记录;
  3. 输入git reflog可以查看所有分支的所有操作记录(包括(包括commit和reset的操作),包括已经被删除的commit记录,git log则不能察看已经删除了的commit记录。

这里写图片描述

上面红色箭头指的地方就查看不到记录。
4. (上面已经说明了,当前最新提交的分支在v2.2.2上)然后我们要恢复5d3c053 这个分支到v2.2.4上面,那我们就要使用git cherry了。
5. 使用 cherry-pick. 根据git 文档:

Apply the changes introduced by some existing commits 

就是对已经存在的commit 进行apply (可以理解为再次提交)

简单用法:

git cherry-pick <commit id>

例如:

$  git checkout old_cc
$  git cherry-pick 67fbeee# 这个 67fbeee号码,位于:
Commit: 67fbeee108798cf43895db16cdcf91c2b1d5298d [67fbeee]
Parents: fa10c134b8
Author: xuhao <504105930@qq.com>
Date: 2016102118:27:14
Labels: tag:, v2.2.3
更改版本号,解决发布问题标题问题

如上图:
由于adb install 这个记录可能在v2.2.2分支提交的,现在要把这个分支提交到v2.2.4分支上;

结果如下:

这里写图片描述

最后之前丢失的那条记录也出来了,成功的解决了~~,sourceTree记录图如下:

这里写图片描述

总结:不管用什么工具,只有熟练掌握了命令才是王道啊~

© 著作权归作者所有

徐昊

徐昊

粉丝 1
博文 84
码字总数 174446
作品 2
杨浦
Android工程师
私信 提问
【Git 常见命令】玩转 Git ——分布式版本控制系统

原文地址:https://www.cloudcrossing.xyz/post/46/ 1 工作流 本地仓库 本地仓库由git维护的三棵“树”组成。Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区...

苍云横渡
2018/07/20
0
0
快速学会使用Git

快速学会使用Git git是什么? Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 对于开发者的我们来说,没有必要花费太多时间去把git学透,因为可能你学会了,...

Diosamolee
2017/12/14
0
0
Git常用命令(二)

一、分支管理: 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。...

passionfly
2016/03/14
46
0
git各种命令介绍以及碰到的各种坑

一.各种命令介绍:  git pull:从其他的版本库(既可以是远程的也可以是本地的)将代码更新到本地,例如:'git pull origin master'就是将origin这个版本库的代码更新到本地的master主枝,该功...

幕三少
2015/12/24
0
0
Git 常用命令速查

转自:http://www.jb51.net/article/55442.htm 一、 Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支 git branch -r ...

qulei1
2017/07/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nproc systemd on CentOS 7

Increasing nproc for processes launched by systemd on CentOS 7 Ask Question I have successfully increased the nofile and nproc value for the local users, but I couldn't find a p......

MtrS
54分钟前
3
0
了解微信小程序下拉刷新功能

小程序提供了这个事件。 onPullDownRefresh() 监听用户下拉刷新事件。 如果要开启下拉刷新功能,要先到json配置: "enablePullDownRefresh":true 配置后下拉有反应了但是没有加载效果,在onP...

oixxan__
今天
2
0
springmvc java对象转json,上传下载(未完)拦截器Interceptor以及源码解析(未完待续)

package com.atguigu.my.controller;import java.util.Collection;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Contr......

architect刘源源
今天
29
0
[日更-2019.5.24、25、26] Android系统中的Binder通信机制分析(一)--servicemanager

声明 其实对于Android系统Binder通信的机制早就有分析的想法,记得去年6、7月份Mr.Deng离职期间约定一起对其进行研究的,但因为我个人问题没能实施这个计划,留下些许遗憾... 最近,刚好在做...

Captain_小馬佩德罗
昨天
24
0
聊聊dubbo的DataStore

序 本文主要研究一下dubbo的DataStore DataStore dubbo-2.7.2/dubbo-common/src/main/java/org/apache/dubbo/common/store/DataStore.java @SPI("simple")public interface DataStore { ......

go4it
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部