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

      

  • 相关阅读:
    微信小程序Tab选项卡切换大集合
    微信小程序基于swiper组件的tab切换
    微信小程序基于scroll-view实现锚点定位
    商家 APP 如何接入新版支付宝支付,老版本商家如何升级
    JSON 接口如何实现 RSA 非对称加密与签名
    基于微信小程序的用户列表点赞功能
    tensorflow中常用学习率更新策略
    交叉熵损失函数和均方误差损失函数
    python中几个实用的文件操作
    特征选择
  • 原文地址:https://www.cnblogs.com/413xiaol/p/10554724.html
Copyright © 2011-2022 走看看