git本地文件回滚操作
今天有几个文件改在了其他分支上。需要回滚。
参考了下面两篇文章:
简单讲,分多个不同的阶段:
1. 用git status命令看,发现是unstaged,那么就是只在working tree里面。
这时候,git checkout <文件名>,就可以了。
当然,我试了几次没成功,看起来是需要对branch指定清楚版本才行,未解。
后来是进行了下面的 git reset . 之后,继续使用
git reset 5c5feea2d8854b3b7d7be3c03764d154429b872a OnetimeRefund.php
才可以的。
2. 已经git add到stage里面的文件,需要先使用如下命令:
git reset .
然后已经staged的文件会恢复为未stage。
3. 本地repository的回滚:
git reset --hard HEAD~3 (回滚3个版本,但是如果已经提交到远程,那么push会报错)
4. 远程repository的回滚:
git revert 51fa57da7c5352ddb(后面这个是git log里面能够查到的)
另外,关于git merge 是否加 --no-ff 的选项,通过git log 加上图形选项,这个就有直观的理解了:
以下是不加--no-ff的git log图形化内容(icode的merge也是默认不加--no-ff的):
git log --graph --pretty=oneline --abbrev-commit
* 3361e4e Merge branch 'onetime_refund_update' into master
|\
| * a36e7e5 Update OnetimeRefund.php for new Refund interface
| * 81149df Merge branch 'trade' into develop
| |\
* | \ 442087b Merge branch 'random_code_new' into master
|\ \ \
| * | | c6664bd modify expire time from 7 to 35 days
| * | | d52c212 modify expire time from 7 to 34 days
| * | | 3399d42 Merge remote-tracking branch 'remotes/origin/master' into random_code_new
| |\ \ \
| |/ / /
|/| | |
而普通的git log大概看不出来:
commit 3361e4ec3dc9d7b4fb2faf6bdcdcc6975bb88d0e
Merge: 442087b a36e7e5
Author: xxx
Date: Wed Dec 14 15:20:06 2016 +0800 Merge branch 'onetime_refund_update' into master commit a36e7e5cc51b3c5405a486afd35df26a01dd9dd4
Author: xxx
Date: Wed Dec 14 14:56:20 2016 +0800 Update OnetimeRefund.php for new Refund interface Change-Id: Ide737112a7c5ceb9077aa34406b453ed2ea2a109 commit 442087bed0c62f3e5f738b906f7764143cf49fee
Merge: 379ce39 c6664bd
......
git本地文件回滚操作的更多相关文章
- Git撤销&回滚操作
开发过程中.你肯定会遇到这种场景: 场景一: 糟了.我刚把不想要的代码.commit到本地仓库中了.可是还没有做push操作! 场景二: 彻底完了.刚线上更新的代码出现故障了.须要还原这次提交的代码! ...
- Git撤销、回滚操作
git的工作流 工作区:即自己当前分支所修改的代码,git add xx 之前的!不包括 git add xx 和 git commit xxx 之后的. 暂存区:已经 git add xxx 进去, ...
- git 本地文件里内容 操作记录
本地环境文件合并分支(以下的都分别 commit提交了的) [一.分支[追加] 和 [新增] 新信息 合并主线 情景] 分支内容: dr.find_element_by_id("su&qu ...
- Git撤销&回滚操作
https://blog.csdn.net/ligang2585116/article/details/71094887 开发过程中,你肯定会遇到这样的场景: 场景一: 糟了,我刚把不想要的代码,co ...
- Git误操作 git reset强制回滚 恢复commit方法
参考: 找回Git中丢失的Commit Git误操作 git reset强制回滚 恢复commit方法 使用Git时,常有误操作,在Commit之后又执行了git reset --hard HEAD强 ...
- Git撤销&回滚操作(git reset 和 get revert)
转自:https://blog.csdn.net/asoar/article/details/84111841 git的工作流 工作区:即自己当前分支所修改的代码,git add xx 之前的!不包括 ...
- Jenkins实现生产环境部署文件的回滚操作(Windows)
由于dotnet项目的生产环境环境部署工具比较少,所以我使用jenkins作为生产环境的自动化部署工具. 既然有回滚操作,那么就会有部署操作:要实现回滚,先要实现部署的操作,我在jenkins搭建了一 ...
- git 版本库回滚(转载)
From:http://www.cnblogs.com/qualitysong/archive/2012/11/27/2791486.html From: http://www.tech126.com ...
- git 的版本回滚
当用git clone 复制远程代码库到本地时,使用 git branch 只能看到默认库(master),当远程库有多个分支时,可以使用 git branch -a 查看全部的分支, 然后git c ...
随机推荐
- [原创]南水之源A*(A-Star)算法
开发导航之前我看了一些A*(A-Star)算法的例子和讲解.没有求得甚解!不过也从A*(A-Star)算法中得到启发,写了一套自己的A*(A-Star)算法.当然,这不是真正(我也不知道)的A*(A- ...
- springMVC配置freemarker
这里呢,我首先来说明一下写该篇的目的. 我最近要用到freemarker因此研究了一下这个东西. 先来说说如何配置吧. 1.jar包.地址见下链接. http://pan.baidu.com/s/1j ...
- Poj(1511),SPFA
题目链接:http://poj.org/problem?id=1511 嗯,最后一次写SPFA了,以后就套模板了. 题意:给出n个点和n条有向边,求所有点到源点1的来回最短路之和(保证每个点都可以往返 ...
- 安装python-devel 在升级到python2.7之后
分别执行如下命令: # yum update # yum install centos-release-SCL # yum search all python27 在搜索出的列表中发现python27 ...
- Web项目后台测试流程
1. 本地下载项目源码 1. Git clone项目代码到本地(本地项目代码1)并fetch: 2. Switch到master分支: 3. Create测试分支(例如:test1)并勾选“Switc ...
- Intent传递对象——Serializable和Parcelable区别
为什么要将对象序列化? 1.永久性保存对象,保存对象的字节序列到本地文件中: 2.用过序列化对象在网络中传递对象: 3.通过序列化对象在进程间传递对象. 1.实现Serializable接口 Seri ...
- jQuery 一些小技巧
1. 返回顶部按钮 可以利用 animate 和 scrollTop 来实现返回顶部的动画,而不需要使用其他插件. // Back to top ...
- 免费PHP WEB环境套件介绍
PHPNOW--Apache + PHP + MySQL(windows) easyphp--Apache + PHP + MySQL+phpmyadmin(windows) xampp(中文站点)- ...
- android 入门 001 (界面布局)
学android 首先学会怎么布局界面,我开始是学.net的,因工作需要学习一下安卓,外行写的不好,请多多见谅指教 .这一篇文章然我们来学习一下四种布局吧! RelativeLayout(相对布局) ...
- VC++检测当前网络状态
VC获得本机网络连接状态 转载:http://www.cppblog.com/wrhwww/archive/2010/12/02/135230.html //本机网络连接类型(成功) #define ...