1. 使用 git checkout 撤销本地修改

即放弃对本地已修改但尚未提交的文件的修改,还原其到未修改前的状态。
注意:add/ commit 的文件不适用个方法,应该用本文提到的第二种方法。

命令如下:

git checkout .      # 撤销对所有已修改但未提交的文件的修改,但不包括新增的文件
git checkout [filename] # 撤销对指定文件的修改,[filename]为文件名

2. 使用 git reset 回退项目版本

可以回退到任意已经提交过的版本。已 add / commit 但未 push 的文件也适用。

命令如下:

  • 1 git reset --hard [commit-hashcode]
  • 2 # [commit-hashcode]是某个 commit 的哈希值,可以用 git log 查看

因此一般用法是先用 Git log 查看具体commit的哈希值,然后 reset 到那个版本。


说明:

这两个命令都不会对新增文件起作用。因为新增的文件是还未加到 git 的记录里面的,即属于未被 tracked 的状态,所以撤销修改和回退均对其不影响。我们直接手动删除文件就行了。

转自:http://blog.csdn.net/dandelion_drq/article/details/51259831

 

git<撤销本地修改与回退版本>的更多相关文章

  1. git<git rebase 修改以前提交过的内容>

      git rebase 使用总结: 使用git rebase 修改以前已经提交的内容 比如要修改之前的commit的 hashcode为:187f869c9d54c9297d6b0b1b4ff47d ...

  2. git rebase修改历史提交内容

    目录 简述 解决过程 简述 git提交历史中有一次提交的内容是有问题,因为每隔一段时间就要发一次版本,所以必须修改这次提交的内容,以便其不影响已经发布的版本. 大概是这样子的 A --- B ---- ...

  3. git 修改上次提交信息 与 撤销此操作.

    git commit --amend 修改刚才提交的commit信息 撤销 git commit --amend 思路是使用 git reflog 查看在哪里ammend的.找到HEAD{N}, N是 ...

  4. 使用git命令修改commit提交信息

    很多时候我们在提交代码时可能会把commit提交信息写错了,这个时候我们就可以用到下面的git命令来修改commit提交信息 git commit --amend 输入"i"之后进 ...

  5. 怎么修改git提交过的内容

    git修改历史提交   Git使用amend选项提供了最后一次commit的反悔.但是对于历史提交呢,就必须使用rebase了. git rebase -i HEAD~3 表示要修改当前版本的倒数第三 ...

  6. git 修改已提交的注释

    在git中,其commit提供了一个--amend参数,可以修改最后一次提交的信息 修改最后一次提交注释 git commit --amend 然后在出来的编辑界面,直接编辑注释的信息,保存退出 gi ...

  7. git 修改历史提交信息

    当你不小心,写错了提交的注视/信息,该如何处理呢.理论上,SCM是不应该修改历史的信息的,提交的注释也是.   不过在git中,其commit提供了一个--amend参数,可以修改最后一次提交的信息. ...

  8. git 学习笔记 —— 获取远端分支并修改后提交至远端仓库

    笔者最近进行开发过程中,所有参与者的代码需要通过 git 上传到远端仓库中,不同的模块对应不同的 git 分支,不同模块的数据需要从远端仓库中获取.这里记录下笔者从远端仓库中获取分支数据,进行修改,最 ...

  9. Git 修改已提交的commit注释

    两种情况: 1.已经将代码push到远程仓库 2.还没将代码push到远程仓库,还在本地的仓库中 这两种情况下的修改大体相同,只是第一种情况最后会多一步 下面来说怎么修改 先搞清楚你要修改哪次的提交注 ...

  10. Git 修改历史提交信息 commit message

    修改最近一条提交的消息 git commit --amend 进入vim模式 按字母 o 或者 insert键 开始修改内容 按 esc 推出编辑,最常用的是输入":q"直接退出, ...

随机推荐

  1. dubbo实际应用中的完整的pom.xml

    http://blog.csdn.net/rodjohnsondoctor/article/details/39030601

  2. 2017年软件工程作业-“Hello World!”团队互评beta版本

    A.欢迎来怼——博客园安卓APP(测评人:刘淑霞) 博客地址:http://www.cnblogs.com/liusx0303/p/7905928.html B.Thunder——爱阅app(测评人: ...

  3. Daily Scrum (2015/10/24)

    由于这一天是周六,大家的学习热情依旧不是很高,但是在PM的要求和督促下,我们还是进行了一些工作.我们预计在明天(周日)完成全部的代码阅读工作,在下一周开始进行代码的编写工作,以下是我们的今日的工作情况 ...

  4. web04-LoginServlet

    电影网站:www.aikan66.com项目网站:www.aikan66.com游戏网站:www.aikan66.com图片网站:www.aikan66.com书籍网站:www.aikan66.com ...

  5. 重温servlet①

    Servlet是单例的,是线程不安全的.比较灵活,但是容易会使两个线程产生错误 类由我们自己来写,对象由服务器生成,方法由服务器自己调用.   一个servletconfig对象对应着一段web.xm ...

  6. UVA - 11021 Tribles 概率dp

    题目链接: http://vjudge.net/problem/UVA-11021 Tribles Time Limit: 3000MS 题意 有k只麻球,每只活一天就会死亡,临死之前可能会出生一些新 ...

  7. BNUOJ 52305 Around the World 树形dp

    题目链接: https://www.bnuoj.com/v3/problem_show.php?pid=52305 Around the World Time Limit: 20000msMemory ...

  8. express框架结合ejs模板引擎使用

    我们在项目里建立一个views文件夹(必须),如果你不想使用views文件夹的话需要调用app.set("views","自定义文件夹名"),然后在里面建立一个 ...

  9. angularJS1笔记-(14)-自定义指令(scope)

    index.html: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  10. 深入理解JAVA I/O系列三:字符流详解

    字符流为何存在 既然字节流提供了能够处理任何类型的输入/输出操作的功能,那为什么还要存在字符流呢?容我慢慢道来,字节流不能直接操作Unicode字符,因为一个字符有两个字节,字节流一次只能操作一个字节 ...