8. Git 文件管理

本文详细介绍了Git中文件的四种状态(Untracked、Unmodified、Modified、Staged)及其转换,并演示了常用的Git操作指令,如查看文件状态、添加到暂存区、提交到本地仓库。同时,讲解了如何设置.gitignore文件来忽略特定文件,提供了规则示例及应用场景。通过实例帮助读者更好地理解和应用Git版本控制系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


8.1 文件四种状态

● 版本控制就是对文件的版本控制,在 Git 管理中,文件被统一管理,有四个状态

  1. Untracked :未跟踪,此文件在文件夹中,但并没有加入到 git 库,不参与版本控制,通过 git add 状态变为 Staged
  2. Unmodify :文件已经入库,未修改,即版本库中的文件快照内容与文件夹中完全一致。这种类型的文件有两种处理方式,如果它被修改,变为 Modified ;如果使用 git rm 移出版本库,则成为 Untracked
  3. Modified :文件已修改,仅仅是修改,并没有进行其他的操作。这种文件有两个去处,通过 git add 可进入暂存 staged 状态,使用 git checkout 则丢弃修改过,返回到 unmodify 状态,这个 git checkout 即从库中取出文件,覆盖当前修改
  4. Staged :暂存状态,执行 git commit 则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件为 Unmodify 状态;执行 git reset HEAD filename 取消暂存,文件状态为 Modified

在这里插入图片描述

8.2 文件操作指令

8.2.1 查看指定文件状态:git status [filename]

  • 先在 D:\xjsgit2\xjsGitHub.github.io ,创建一个测试文件 ABC.txt

在这里插入图片描述

8.2.2 查看所有文件状态:git status

在这里插入图片描述

8.2.3 添加所有文件到暂存区:git add .

在这里插入图片描述

8.2.4 提交暂存区中的内容到本地仓库:git commit -m "消息内容"

在这里插入图片描述

8.3 忽略文件

8.3.1 实际需求:我们不想把某些文件纳入版本控制中, 如何处理?

8.3.2 忽略文件处理方式

  • 不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等
  • 在主目录下建立 “.gitignore” 文件 (默认就有),此文件有如下规则:

在这里插入图片描述

  1. 忽略文件中的空行或以井号 (#) 开始的行
  2. 支持 Linux 通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,...})代表可选的字符串等
  3. 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略
  4. 如果名称的最前面是一个路径分隔符(/),表示忽略 .gitignore 文件所在的目录,不包括其任何子目录 中的 dir 目录
  5. 如果名称的最后面是一个路径分隔符(/),忽略 .gitignore 文件所在的目录和所有子目录的 dir 目录
#常用规则, 掌握一些, 其它查看文档
*.java  #忽略所有 .java 结尾的文件
!xjs.java  #xjs.java 除外
  1. 更加详细的规则可以参考文档

8.3.3 看一个实例

  • 文件 D:/xjsgit2/xjsGitHub.github.io/.gitignore

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

要学就学灰太狼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值