git .gitignore 忽略不需要被提交的文件

在git的使用过程中,有很多文件是不需要被提交到版本管理的,比如mac的朋友都知道.DS_Store 文件在每个文件夹中都会出现,但是这个文件对代码同步来说并没有什么作用,所以我们需要把这个文件排除在b岸本管理之外,这个时候就需要我们问答的 gitignore文件来搞定了。
首先声明我的使用环境为mac,所以windows使用起来有更简单的方法,或者有些命令windows不能使用

默认情况之下gitignore文件是不存在的,我们需要把这个文件新建一下,在终端中你首先cd到你的工程目录下,然后输入命令

touch .gitignore 

这样你就可以在文件中新增一个.gitignore隐藏文件。
可以使用

ls -all     或者linux下使用   ll

进行查看,之后对文件进行编辑

vi .gitignore 

在vi中使用 i 命令对文件进行编辑,然后点击esc 使用 :wq命令进行保存

1、配置语法:

  以斜杠“/”开头表示目录;

  以星号“*”通配多个字符;

  以问号“?”通配单个字符

  以方括号“[]”包含单个字符的匹配列表;

  以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

  此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;

2、示例:

  (1)规则:fd1/*
     说明:忽略目录 fd1 下的全部内容;注意,不管是根目录下的 /fd1/ 目录,还是某个子目录 /child/fd1/ 目录,都会被忽略;

  (2)规则:/fd1/*
     说明:忽略根目录下的 /fd1/ 目录的全部内容;

  (3)规则:

    /*
    !.gitignore
    !/fw/bin/
    !/fw/sf/

说明:忽略全部内容,但是不忽略 .gitignore 文件、根目录下的 /fw/bin/ 和 /fw/sf/ 目录;

例如我配置的是

launchConfigurations/
.DS_Store
test.txt

之后提交到远端就可以了

但是如果你需要忽略的文件意境存在在远端中了,那么你需要将远端中的文件删除掉才可以

使用git rm --cached .DS_Store进行删除

git rm –cached 把文件.DS_Store从git的索引库中移除,但是对文件.DS_Store本身并不进行任何操作也就是说本地还是有.DS_Store文件的,但是远端却没有了

之后再使用git commit /push 之后提交上去
这样就不会再用担心这个文件的冲突了

你可能感兴趣的:(git)