.gitignorer如何过滤提交的文件

来源:互联网 发布:dnspod 阿里云 编辑:程序博客网 时间:2024/05/18 02:30

当有些文件不需要提交到gitlab上时, 我们需要编写.gitignore文件.

进入工程目录, 然后vim .ignore编辑.大概格式如下.

'#'开始的行,被视为注释.                                                                                                                          

忽略掉所有文件名是 foo.txt的文件.

foo.txt

忽略所有生成的 html文件,

*.html

# foo.html是手工维护的,所以例外.

!foo.html

忽略所有.o .a文件.

*.[oa]


假如发现某些文件仍然还是提交上去了, 那可能是因为以前已经提交到了git上, 我们需要删除git上对应的文件

比如如下情况:

利用.gitignore过滤文件,如编译过程中的中间文件,等等,这些文件不需要被追踪管理。

现象

在.gitignore添加file1文件,以过滤该文件,但是通过git status查看仍显示file1文件的状态, 或者是说git上仍然有该文件.

原因

在git库中已存在了这个文件,是之前没有做.giitignore处理的时候, push提交过该文件。

.gitignore文件只对还没有加入版本管理的文件起作用,如果之前已经用git把这些文件纳入了版本库,就不起作用了

解决

需要在git库中删除该文件,并更新。

删除方法很简单, git rm--cached yourfile具体路径,然后更新 .gitignore 忽略掉目标文件,最后提交.

比如某静态库不小心提交到了git上, 现在需要删除git上的这个静态库.a文件, 并且以后忽略掉静态库, 不提交了.

这样操作, 本地文件也会删除, 记得备份.

1. 终端打开工程目录.

2. git rm 静态库具体路径. (也可以用git rm --cached 静态库具体路径)

3. 更新.gitignore文件, 保证加入了该静态库, 以保证下次不提交改静态库.

4. push.

1 0
原创粉丝点击