zoukankan      html  css  js  c++  java
  • git rm与直接rm的区别

    git rm

    行为:

      1.删除一个文件

      2.将被删除的这个文件纳入缓存区

    $ git rm a
    rm 'a'
    $ git status
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
            deleted:    a

    提交:

      直接 git commit -m ''

    $ git commit -m 'delete a'
    [master 1cd6efe] delete a
     1 file changed, 0 insertions(+), 0 deletions(-)
     delete mode 100644 a
    
    $ git status
    On branch master
    nothing to commit, working directory clean

    恢复:

      1. 恢复暂存区

      2. 恢复工作区

    $ git reset HEAD a
    Unstaged changes after reset:
    D       a
    
    $ git status
    On branch master
    Changes not staged for commit:
      (use "git add/rm <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
            deleted:    a
    
    no changes added to commit (use "git add" and/or "git commit -a")
    
    $ git checkout -- a
    $ git status
    On branch master
    nothing to commit, working directory clean

    直接调用系统的rm

    行为:

      从工作区删除了一个文件

    $ rm a
    
    $ git status
    On branch master
    Changes not staged for commit:
      (use "git add/rm <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
            deleted:    a
    
    no changes added to commit (use "git add" and/or "git commit -a")

    提交:

      1.把修改加入暂存区

      2.提交暂存区的改动

    $ git add a
    
    $ git status
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
            deleted:    a
    
    $ git commit -m 'delete a '
    [master 689a73d] delete a
     1 file changed, 0 insertions(+), 0 deletions(-)
     delete mode 100644 a
    
    $ git status
    On branch master
    nothing to commit, working directory clean

    恢复:

      直接恢复工作区就好了,git checout -- file

    $ git checkout -- a
    
    $ git status
    On branch master
    nothing to commit, working directory clean

      

  • 相关阅读:
    使用命令安装laravel 项目
    laravel如何输出最后一条执行的SQL
    Laravel5.4 队列简单配置与使用
    PHP使用RabbitMQ实例
    初识RabbitMQ,附RabbitMQ+PHP演示实例
    Laravel 5.3 单用户登录的简单实现
    redis+thinkphp5的注册、登陆、关注基础例子
    Laravel 5.3 单用户登录的简单实现
    php面试题汇总
    (转)php读取文件使用redis的pipeline导入大批量数据
  • 原文地址:https://www.cnblogs.com/413xiaol/p/10554724.html
Copyright © 2011-2022 走看看