git的回退和撤销操作】的更多相关文章

回退是git的使用中很常用的一个操作,如果清楚各个回退命令的作用,不仅大大加快代码回退的效率,还能避免代码回退造成的事故 1.git reset --hard [commit] 清空暂存和未暂存的更改 ,仓库重置到目标提交. 也就是说,使用该命令后,文件状态变为目标提交的状态 所以,可以: git reset HEAD --hard 来丢弃所有已暂存和未暂存的更改 2.git reset --soft [commit] 保留暂存和未暂存的更改,仓库重置到目标提交,目标提交之后的所有提交的变更都变…
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file. 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作 场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,不过前提是没有推送到远程库:git reset --hard HEAD^(上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写…
1.将删除文件恢复--撤销所删除的文件git checkout 文件名 2.git resetgit reset --hard commitID(或某个节点)----强制切换到某个点,会导致所修改的内容删除(add之前)git reset --soft commitID(或某个节点)----强制切换到某个点,所修改的内容会保留(add之后) 3.撤销操作 --1)文件修改后还没提交到暂存区,进行撤销操作后,文件恢复到版本库一样git checkout -- 文件名--2)文件修改后提交到了暂存区…
在阅读廖雪峰git教程时,对版本回退和暂存区撤销修改没太看懂,所以自己测试了一下. 版本回退: git reset --hard HEAD 这个命令用于版本回退,就是将已提交的版本覆盖本地工作区的内容.该操作会清空暂存区的内容 撤销修改: git checkout -- file 撤销对工作区的修改,以最新一次的时间节点(add或者commit)为准,这个命令只改变工作区内容 清空暂存区修改: git reset HEAD -- file 清空add命令向暂存区提交的修改,该操作之影响暂存区,对…
版本回退: 在实际工作中,我们会不断对文件进行修改,然后不断提交修改到版本库里,一旦你把文件改乱了,或者误删了文件,还可以从最近的一个commit恢复,然后继续工作,而不是把几个月的工作成果全部丢失.在Git中,我们用git log命令查看修改记录: git log命令显示从最近到最远的提交日志如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数: 需要友情提示的是,你看到的一大串类似9b5f63fle8515...的是commit id(版本号),和SVN不一样…
Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突 这篇是接着上篇分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目讲的,上篇主要是说用GUI来图形化界面操作,但是一般我们程序员也不会这么干,用命令又轻松又愉悦,所以,这里我就再开了一篇来专门说一下纯命令是怎么去操作的,但是要注意哦,其实廖雪峰老师的网站就是非常赞的学习资源哦! 廖雪峰老师:http://www.li…
  撤销操作的相关文章 http://www.linuxidc.com/Linux/2015-06/119350.htm   ——撤销已经修改,但是还没有添加到暂存区的操作: 解决方案: 有两种情形: 第一种情形:如果一个文件是新建的文件,没有untrack,说明这个文件在库里就没有版本,所以用git rm 命令是匹配不到的.所以这种文件是没有跟踪版本的,也就不能知道,到底修改了什么.如果要跟踪,就要add到tracking文件列表当中: 这种文件自然就没有撤销之说了,如果不想要了,就只能直接执…
下面以现实场景作为情境. 基础知识,理解git中的几个区域 本地代码已经add,未commit 修改本地工作目录中的readme.md,添加文字"第一次修改" 然后查看下状态 ➜ experimentation git:(master) ✗ git status On branch master Your branch is up-to-date with 'origin/master'. Changes not staged for commit: (use "git ad…
场景概念说明 首先说明一个概念, git是一个分布式的版本控制工具,分布式即 git 管理的项目是有多个大致平等的仓库的.通过一个例子来说明这个东西. 举一个最简单的使用场景: 你在github 建立了一个项目, 然后把已经初始化的项目拉到了本地(或者从本地push了内容到github). 即: 此时github 和你本地都有了项目,且二者,已经建立了联系. 此时这一个项目既有了两个仓库,一个在github 的远端仓库,一个在本地的本地仓库. 如果是两人合作,则会有两个本地仓库. 虽然主观上,把…
所谓撤销操作,无非就是后悔药.对Git来说,撤销操作主要是以下几块: 撤销已经提交的Commit. 对已经通过git add加入Stage的文件,进行unstage操作. 对已经是Untracked却modified的文件,进行unmodify操作. 以下就针对上述三种情况,分别进行描述: 撤销已经提交的Commit. 如果要撤销整个Commit,那么可以使用 $git revert <commit> 注意,git并不是回退HEAD指针,而是生成一个新commit,undo指定commit的修…