Lerix的git学习笔记(4)_工作区的文件状态及转化

工作区的文件状态及转化

查看工作目录内的文件状态

首先进入到对应的工作目录,使用下面的命令,可查看对应目录的文件状态
git status
几种状态的解释:

  1. untracked files:未跟踪的文件,指本工作目录内未受git版本管理的文件。

  2. change to be commited:列出发生更改且进入暂存状态的文件,可随时提交

  3. changers not stages for commit:已经修改了,但还没暂存的文件。

一个文件通常变化周期是:1——>3——>2——>3——>2…

跟踪文件

  • 目录内的文件加入到git跟踪

    本地工作目录直接新建一个文件,默认需要手动添加到git的跟踪,否则git不知道有这么个文件,添加命令:

      git add <file>
    

    此命令上一章已经讲过

  • 已被跟踪的文件,取消跟踪
    只是取消跟踪:

       git rm -cached <file>
    

    不但取消跟踪,还要从磁盘删除

      git rm <file>
    

    注意,如果直接使用 rm ,(不是git rm)此时会在磁盘直接删除文件,但在未暂存列表中可以看到,准备将删除操作放到暂存区,此时两种做法将其从暂存区删除

    1.保存删除操作到暂存区,并发布此次结果

      git add <file>
      git commit -m 'delete file'
    

    2.再次使用

      git rm <file>
    
  • 忽略跟踪文件:既不跟踪某些文件,也不要把他们显示在未跟踪列表中。

    使用gitignore文件

暂存文件

已被跟踪的文件,被修改后,可把文件放入暂存区

  • 把文件放入暂存区

      git add <file>
    

提交更新

把文件从暂存区提交一个快照到git仓库

git commit -m "这里写changelog"

跳过使用暂存区域

git commit -a -m "一次性将所有修改暂存并提交"

移动文件,重命名文件

git mv file1 file2

相当于

mv file1 file2
git rm file1
git add file2

查看更改(diff)

未暂存文件(工作区) <——> 暂存区文件

比较工作目录中文件与暂存区的快照之间的差异

git diff

git仓库(上次commit) <——> 暂存区文件

git diff --staged

或者

git diff --catched

未暂存文件(工作区) <——> git仓库(上次commit)

git diff HEAD

HEAD指向当前分支上最后一次commit的位置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值