1、删除文件

  git rm 想要删除的文件的名字及其后缀
  git commit -m "对本次提交的描述信息"
  git push

 删除文件夹,执行命令:

  git rm 想要删除的文件夹的名字 -r

 找回误删文件、文件夹

  git log
  git reset --hard 需要回退到的状态的commit标识号
  git reset --hard 最新状态的commit标识号
  git add .
  git commit -m "对本次提交的描述"
  git push
过程示意图:
commit:——>commit:——>commit:——>commit:——>commit:
误删 最新状态

 1.1、3、git 取消commit - LittleMoon - 博客园.html(https://www.cnblogs.com/lyy-2016/p/6509707.html

git如何撤销上一次commit操作

1.第一种情况:还没有push,只是在本地commit

git reset --soft|--mixed|--hard <commit_id>
git push develop develop --force (本地分支和远程分支都是 develop)
这里的<commit_id>就是每次commit的SHA-1,可以在log里查看到 --mixed 会保留源码,只是将git commit和index 信息回退到了某个版本.
--soft 保留源码,只回退到commit信息到某个版本.不涉及index的回退,如果还需要提交,直接commit即可.  // ZC: 主要使用的是这个参数
--hard 源码也会回退到某个版本,commit和index 都会回退到某个版本.(注意,这种方式是改变本地代码仓库源码) 当然有人在push代码以后,也使用 reset --hard <commit...> 回退代码到某个版本之前,但是这样会有一个问题,你线上的代码没有变,线上commit,index都没有变,当你把本地代码修改完提交的时候你会发现全是冲突.....这时换下一种 2.commit push 代码已经更新到远程仓库 对于已经把代码push到线上仓库,你回退本地代码其实也想同时回退线上代码,回滚到某个指定的版本,线上,线下代码保持一致.你要用到下面的命令 git revert <commit_id>
revert 之后你的本地代码会回滚到指定的历史版本,这时你再 git push 既可以把线上的代码更新。 注意:git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit,看似达到的效果是一样的,其实完全不同。 第一:上面我们说的如果你已经push到线上代码库, reset 删除指定commit以后,你git push可能导致一大堆冲突.但是revert 并不会.
第二:如果在日后现有分支和历史分支需要合并的时候,reset 恢复部分的代码依然会出现在历史分支里.但是revert 方向提交的commit 并不会出现在历史分支里.
第三:reset 是在正常的commit历史中,删除了指定的commit,这时 HEAD 是向后移动了,而 revert 是在正常的commit历史中再commit一次,只不过是反向提交,他的 HEAD 是一直向前的.

  ZC:我只是测试了 如下的情况:本地commit了,但是没有提交到远程:(注意点:需要本地git中已经有commit的记录才行[不管是拉的远程的记录还是本地提交的记录(例如远程空&本地首次提交)],不然会报错) 暂时主要使用 命令"git reset --soft HEAD^"

 1.2、

   1. 查看git的提交版本和id 拿到需要恢复的版本号
    命令:git log 
   2. 恢复到指定版本
    命令:git reset --hard 44f994dd8fc1e10c9ed557824cae50d1586d0cb3 //后面这一大串44f994dd8fc1e10c9ed557824cae50d1586d0cb3就是版本id
   3. 强制push
    命令:git push -f origin master

  1.2.1、git log

   (1)、git log --pretty=oneline

   (2)、貌似 git log可以带的参数很多,其中一篇参考文章:Git - 查看提交历史.html(https://git-scm.com/book/zh/v1/Git-%E5%9F%BA%E7%A1%80-%E6%9F%A5%E7%9C%8B%E6%8F%90%E4%BA%A4%E5%8E%86%E5%8F%B2

2、【git】git add 添加错文件 撤销 - 哲之守义 - 博客园.html(https://www.cnblogs.com/arieslee/p/8288223.html)

git add 添加 多余文件
这样的错误是由于, 有的时候 可能 git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件
git add 如果添加了错误的文件的话 撤销操作
git status 先看一下add 中的文件
git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD XXX/XXX/XXX.java 就是对某个文件进行撤销了

 ZC:git reset HEAD

3、(20191208)强制pull(我用的如下命令):

  git fetch --all

  git reset --hard origin/master

  git pull

4、

5、

git.ZC_命令积累的更多相关文章

  1. git checkout 命令详解

    转自:http://www.cnblogs.com/hutaoer/archive/2013/05/07/git_checkout.html?utm_source=tuicool&utm_me ...

  2. git checkout 命令详解(转)

    在日常的git操作中,git checkout——检出,是我们的常用命令.最为常用的两种情形是创建分支和切换分支. 在下面的命令中,使用了一些简写,在这里说明一下: git st # git stat ...

  3. git checkout 命令详解【转】

    转自:http://www.cnblogs.com/hutaoer/archive/2013/05/07/git_checkout.html 在日常的git操作中,git checkout——检出,是 ...

  4. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  5. git常用命令

    开始的时候 git config --global user.name "Your Name" git config --global user.email "email ...

  6. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  7. Git 常用命令大全

    Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...

  8. git log命令全解析,打log还能这么随心所欲!

    git log命令非常强大而好用,在复杂系统的版本管理中扮演着重要的角色,但默认的git log命令显示出的东西实在太丑,不好好打扮一下根本没法见人,打扮好了用alias命令拍个照片,就正式出道了! ...

  9. Git常用命令总结

    Git常用命令总结 git init      在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.   git clone ...

随机推荐

  1. 长沙理工大学第十二届ACM大赛-重现赛I 主持人的烦恼 (sort)

    链接:https://ac.nowcoder.com/acm/contest/1/I 来源:牛客网 主持人的烦恼 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...

  2. centos7安装mxnet

    pip install mxnet-cu90 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com 安装sklearn时总报错 ...

  3. 【学习】020 Redis

    Java缓存机制 Java中要用到缓存的地方很多,首当其冲的就是持久层缓存,针对持久层谈一下:  要实现java缓存有很多种方式,最简单的无非就是static HashMap,这个显然是基于内存缓存, ...

  4. shell字符串拼接

    name="Shell" url="http://c.biancheng.net/shell/" str1=$name$url #中间不能有空格 str2=&q ...

  5. linux下vim如何清空一个文件?

    这是一个很巧妙的方法.如何来清空一个文件里的内容呢! 很简单,但确很实用: echo " " > filename(文件名称); 一句话就可以搞定.

  6. unkown类型

    1,任何类型的值都可以赋给 unkown类型 2. 如果没有类型断言或基于控制流的类型细化时 unknown 不可以赋值给其它类型,此时它只能赋值给 unknown 和 any 类型 3. 如果没有类 ...

  7. windows10安装pycharm,以及pycharm教程和破解码

    pycharm下载请点我 根据自己的情况选择安装目录 下面我们选择"64位安装"(根据自己的系统来选择),并勾上".py",如图所示: 一定要拉到最后才行  p ...

  8. postman-参数化

    1.txt 1.如图第一行为变量名,下面行为对应的值 2.设置 Pre-request-Script 参数 data为文件名,username.password自定义参数名:在Tests最好加上断言 ...

  9. HTML中的表单<form>标签

    一.HTML表单 HTML 表单用于搜集不同类型的用户输入. HTML 表单包含表单元素,表单元素指的是不同类型的 input 元素.复选框.单选按钮.提交按钮等等. 关于表单的更多内容可以参考htt ...

  10. 【bzoj1324】Exca王者之剑(8-9 方格取数问题)

    *题目描述: 在一个有m*n (m,n<=100)个方格的棋盘中,每个方格中有一个正整数.现要从方格中取数,使任意2 个数所在方格没有公共边,且取出的数的总和最大.试设计一个满足要求的取数算法, ...