git — gitignore

一、gitignore简介

  • 每个Git项目中都需要一个 “.gitignore” 文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。
    比如我们算法项目中的数据集,它在我们项目中是很重要的,但是它占的内存也是很大的,所以一般我们用Git管理的时,可以在 .gitignore 中记录来不提交这些文件。

二、gitignore使用

  • .gitignore 越早创建越好,最好当我们创建项目时时便创建该文件。
    附上github官方提供的针对每一种项目所对应的 .gitignore 文件内容的链接:https://github.com/github/gitignore

1. ignore 语法

# 下面是一些.gitignore文件忽略的匹配规则:

*.a       # 忽略所有 .a 结尾的文件
!lib.a    # 忽略 lib.a 除外的文件

/TODO     # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/    # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

2. gitignore 如何在项目中正常使用

  • 当我们新建一个项目时候,想要使用 gitignore 的话,操作步骤如下:

    1. 创建项目
    2. git init 来初始化 git 来管理项目
    3. 在项目的根目录下创建 .gitignore 文件
    4. 在 .gitignore 中填写不需要 git 来管理的文件
    5. 之后 add / commit 的过程便不会提交不需要管理的文件了
  • 项目中需要忽略的文件
      一般忽略以下文件不需要添加到 git 中:

    • .idea 文件夹,此文件夹是用来保存开发工具的设置信息。
    • .gradle 文件夹,此文件夹是用来保存gradle的依赖信息。
    • 所有的 build 文件夹,build文件夹是用来保存编译后的文件目录。
    • 所有的 .iml 文件,是用来保存开发工具信息。
    • local.properties 文件,是用来保存项目依赖信息。

例子如下:
如图,我创建了一个名为 gittest 的项目,首先git init,然后在里面只放了 hello.txt 和 空的.gitignore
使用 git status 查看 git 状态,显示这两个文件
在这里插入图片描述这时候我在 .gitignore 中填写 *.txt 内容,继续使用 git status 来查看,只显示一个文件, hello.txt 文件已经没有了,表面 git 已经忽略 hello.txt 文件了。
在这里插入图片描述


对于版本管理工具,既然有正常步骤,那肯定有非正常情况。
你们周围有没有小伙伴经常会说,哎呀我的代码又被 git 搞没了,哥哥你帮我找找呗,帮我版本回退呗。同样 gitignore 这种操作我也是爬坑好几次才会操作。
博主将:不需要 git 管理的文件误提交到了 git 中的情况称为非正常步骤

3. 已提交到 git 中文件想要忽略

具体步骤在下面的注意点中

. ignore 注意点

	.gitignore只能忽略那些原来没有被track的文件(即没有add到),如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
	那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
	 输入:
	 git rm -r --cached filePath
	 git commit -m “remove xx”
	 或者:
	 git rm -r --cached .
	 git add .
	 git commit -m “update .gitignore”
	 
	 来解释下几个参数 
	    -r 是删除文件夹及其子目录 
	    –cached 是删除暂存区里的文件而不删除工作区里的文件,
	第一种是删除某个文件,第二种方法就把所有暂存区里的文件删了,再加一遍,相当于更新了一遍。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐