2017年01月13日 22:56:27786人阅读 评论(0) 收藏 举报
 分类:
Git(4) 

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenxiqilin/article/details/54412526

在工作区删除 
我们修改文件的时候,有时也会把文件给删除掉。例如我们把test3.txt从工作区删除。 
 
这个时候我后悔了,想找回来,怎么办?如果你还没提交到stage区(也没提交到master区)那就好办,只需要使用git checkout test3.txt即可找回来了。如下图: 

从工作区删除后提交到stage 
我们从工作区删除了文件后,肯定需要提交到版本库管理。只需要执行指令git rm 文件名。如下图: 
 
如上图我们已经成功删除了test3.txt并提交到了stage。

从master去reset回到工作区 
如果这个时候后悔删掉的文件,已经提交到了stage,还有办法退回吗?肯定有了,这个时候需要使用reset指令,如下图: 
 
是不是跟上次说的版本退回有点像?对,前面我们讲过有个HEAD指针指向提交到master最新的版本,所以我们执行git reset –hard HEAD指令就是把HEAD指向的版本退回到stage和工作区。

理解了这个原理,即使删除的文件提交到master我们也不用担心,只需要reset到HEAD^就可以了。

小结

  • git rm 文件名
  • git chekcout 文件名
  • reset命令行
  • 对于删除文件工作区 -> stage,使用git rm指令;stage ->master,使用commit指令;从stage -> 工作区,使用git checkout指令;从master -> 工作区,使用指令git reset指令(同时也执行了master -> stage)

git 删除与撤回的更多相关文章

  1. git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚

    [git 删除本地分支] git branch -D br [git 删除远程分支] git push origin :br  (origin 后面有空格) git代码库回滚: 指的是将代码库某分支退 ...

  2. 【GIT】git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚

    [git 删除本地分支] git branch -D br [git 删除远程分支] git push origin :br  (origin 后面有空格) git代码库回滚: 指的是将代码库某分支退 ...

  3. [转]git 删除远程仓库文件

    来源:https://www.jianshu.com/p/de75a9e3d1e1 git删除远程文件夹或文件的方法 项目开发初期由于.gitignore 文件配置不正确很有可能导致某些不需要的目录上 ...

  4. git 删除本地所有分支

    除master的所有: git branch | grep -v "master" | xargs git branch -D   Git删除分支的指令:git branch -d ...

  5. git 删除本地分支、远程分支、本地回滚、远程回滚

    一. git 删除分支 1. git 删除本地分支 git branch -D branchname 2. git 删除远程分支 git push origin :branchname (origin ...

  6. git使用,多分支合并代码解决冲突,git删除远程分支,删除远程master默认分支方法

    git使用,多分支合并代码解决冲突,git删除远程分支,删除远程master默认分支方法提交代码流程:1.先提交代码到自己分支上2.切换到devlop拉取代码合并到当前分支3.合并后有变动的推送到自己 ...

  7. git 删除 repository

    git 删除 repository 打开版本库,选择要删除的repository 点击Settings 找到删除选项 输入repository name,点击delet…… 删除本地仓库 执行git ...

  8. 【转】git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚

    转载自:http://m.blog.csdn.net/blog/lihongli528628/45483463 [git 删除本地分支] git branch -D br [git 删除远程分支] g ...

  9. git删除所有历史提交记录,只留下最新的干净代码

    git删除所有历史提交记录,只留下最新的干净代码 1.Checkout git checkout --orphan latest_branch 2. Add all the files git add ...

随机推荐

  1. github收藏夹

    技术面试必备基础知识 https://github.com/CyC2018/CS-Notes 程序员简历模板列表 https://github.com/geekcompany/ResumeSample ...

  2. gitlab 存储仓库目录设置及数据迁移

    注:一开始没有考虑到把gitlab划分好存储目录,占用系统磁盘,由于gitlab是默认安装的,随着公司代码越来越多,导致gitlab数据目录空间不足 磁盘空间: [root@gitlab ~]# df ...

  3. 前端学习之CSS

    CSS介绍 CSS(Cascading Style Sheet, 层叠样式表)定义如何显示HTML元素, 给HTML设置样式, 让它更加美观. 当浏览器读到一个样式表, 它就会按照这个样式表来对文档进 ...

  4. ios高级开发之多线程(二)NSThread技术

    多线程技术是有多套解决方案的,那么我们该如何选择呢? 技术方案 简介 语言 线程生命周期 使用频率 pthread 1.一套通用的多线程API 2.适用于UNIX,linux,windows等 3.跨 ...

  5. ssm+redis整合(通过aop自定义注解方式)

    此方案借助aop自定义注解来创建redis缓存机制. 1.创建自定义注解类 package com.tp.soft.common.util; import java.lang.annotation.E ...

  6. JVM-GC学习

    http://blog.csdn.net/column/details/14851.html   地址记录

  7. loadrunner 参数化-如何从数据库中取数据-连接数据库进行参数化

    LoadRunner提供两种参数化取值方式,一种是手动编辑,另一种就是通过连接数据库取值.一般在大型业务并发压力测试时,数据量肯定也都是非常大的,所以手动去编辑就不切实际了,这时用连接数据库的功能就方 ...

  8. Qt中隐藏滚动条重新实现鼠标滚轮事件wheelEvent

    delta()已经被弃用了,QT5中用的是angleDelta(),计算的时候取angleDelta().y()值. #重载方法wheelEvent(self,event),即滚轮事件方法 #---- ...

  9. springboot缓存注解——@Cacheable

    @Cacheable: 1,方法运行之前,先查询Cache(缓存组件),按照cacheName指定的名字获取(CacheManager获取相应缓存) 第一次获取缓存如果没有Cache组件会自会自动创建 ...

  10. primer3批量设计引物

    核心程序调用 Primer3_core,基本用法: primer3_core [ -format_output ] [ -default_version=1|-default_version=2 ] ...