git 删除与撤回

版权声明:本文为博主原创文章,未经博主允许不得转载。 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 删除与撤回的更多相关文章
- git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚
[git 删除本地分支] git branch -D br [git 删除远程分支] git push origin :br (origin 后面有空格) git代码库回滚: 指的是将代码库某分支退 ...
- 【GIT】git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚
[git 删除本地分支] git branch -D br [git 删除远程分支] git push origin :br (origin 后面有空格) git代码库回滚: 指的是将代码库某分支退 ...
- [转]git 删除远程仓库文件
来源:https://www.jianshu.com/p/de75a9e3d1e1 git删除远程文件夹或文件的方法 项目开发初期由于.gitignore 文件配置不正确很有可能导致某些不需要的目录上 ...
- git 删除本地所有分支
除master的所有: git branch | grep -v "master" | xargs git branch -D Git删除分支的指令:git branch -d ...
- git 删除本地分支、远程分支、本地回滚、远程回滚
一. git 删除分支 1. git 删除本地分支 git branch -D branchname 2. git 删除远程分支 git push origin :branchname (origin ...
- git使用,多分支合并代码解决冲突,git删除远程分支,删除远程master默认分支方法
git使用,多分支合并代码解决冲突,git删除远程分支,删除远程master默认分支方法提交代码流程:1.先提交代码到自己分支上2.切换到devlop拉取代码合并到当前分支3.合并后有变动的推送到自己 ...
- git 删除 repository
git 删除 repository 打开版本库,选择要删除的repository 点击Settings 找到删除选项 输入repository name,点击delet…… 删除本地仓库 执行git ...
- 【转】git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚
转载自:http://m.blog.csdn.net/blog/lihongli528628/45483463 [git 删除本地分支] git branch -D br [git 删除远程分支] g ...
- git删除所有历史提交记录,只留下最新的干净代码
git删除所有历史提交记录,只留下最新的干净代码 1.Checkout git checkout --orphan latest_branch 2. Add all the files git add ...
随机推荐
- Serializable中的serialVersionUID
有序列化,就必然有反序列化!比如在A端为UserLogin(见上一篇对象序列化)做了序列化,然后在B端进行反序列化. 首先需要,A端和B端都定义有相同的UserLogin类.可是,万一两端的UserL ...
- SAP基本计量单位更改(转载)
转载自:http://blog.csdn.net/sapmatinal/article/details/50997819 在SAP中物料创建后,一旦发生业务,其基本计量单位便很难修改.由于单位无法满足 ...
- EFI系统引导的一些零碎知识点
EFI目录 下图只有Boot和Microsoft,如果你还装其他系统可能还会有其他的文件夹,比如你还装了Ubuntu(或者manjaro),那么会有个叫Ubuntu(manjaro)的文件夹与Boot ...
- SQL Server監控与診斷
僅為記錄工作中遇到的問題. 1. 字符串截斷: SQL server里很多job用於運行DTS,經常會收到系統出錯警報,如: ...String ) The statement has been te ...
- iOS QQ 扫一扫 捷径URL
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- [MySQL] timestamp和datetime的区别
建表语句如下: create table strong_passwd_whitelist( id int unsigned not null auto_increment, email_id int ...
- 禁止root登陆sshd/并修改默认端口号
1,新建一个用户: #useradd xxx 2,为新用户设置密码: #passwd xxx 3,修改sshd配置文件 #vi /etc/ssh/sshd_config 查找“#PermitRootL ...
- crop image 需要的基础知识
refer : https://www.youtube.com/watch?v=R7dObDtw1aA https://www.shuxuele.com/algebra/trig-finding-an ...
- HBase Block Cache(块缓存)
Block Cache HBase提供了两种不同的BlockCache实现,用于缓存从HDFS读出的数据.这两种分别为: 默认的,存在于堆内存的(on-heap)LruBlockCache 存在堆外内 ...
- 在docker中快速创建包含ip相关tool的ubuntu镜像
在docker学习中需要创建轻量级的,包含ip相关工具的容器,支持ping,ip,ethtool,brctrl等相关指令. 下面就是快速创建一个满足需求的ubunut镜像的过程: 1) 在docker ...