gitignore文件的作用和语法

0、preface/foreword

Git是代码管理工具,开源项目。Git有对应的命令进行文件的添加和删除,但是没有专用的命令忽略文件,那该怎么办呢?有没有其他的方法去实现该功能呢?答案是肯定的,.gitignore文件完成该任务。在Linux/MacOs系统中含有.特殊符号的文件会影藏,需要通过命令 ls -a 显示。

1、作用

gitignore文件是用于忽视指定的文件,对于代码仓库不感兴趣的文件或者出于保密原因不想把特定文件上传到仓库,那么就需要在该文件中指定。

2、语法(syntax)

2.0 git仓库中文件状态

文件/文件夹包含以下三种状态:

  1. tracked,已经暂存(git add)和提交(git commit)到主仓库的文件和文件夹
  2. untracked,在工作目录中创建的新文件或文件夹,但是还没有暂存(git add)
  3. ignored,Git在Git存储库中完全排除、忽略和不知道的所有文件或目录。本质上,是告诉Git哪些没有跟踪的文件应该保持不跟踪且永远不提交的方式。

2.1 注释(#)

注释:不充当任何功能,起注释作用,用于解释。

#ignore file .gitignore

2.2 通配符(wildcard) 

字符串通配符: *

# ignore .c file

*.c

2.3 忽略文件夹 

如果想忽略指定的文件夹,需要把文件夹的绝对路径指出:

/root-directory/test/  

2.4 忽略文件 

忽略所有路径下的文件名为test.h的文件:

test.h 

 2.5 否定忽略指定的文件(!)

在指定文件前面加符合 !进行否定。

*.md

! README.md

README.md文件不会被忽略。 

2.6 忽略已经上传到仓库的文件

如果文件已经上传到了仓库,即已经tracked,那么是无法去忽略的,只能先将该文件从仓库中 删除。

#仓库和本地中删除文件

git rm test.md 

#从索引中/仓库中删除文件,但是是本地还有该文件

git  rm --cached test.md 

你可能感兴趣的:(git,gitignore)