git使用.gitignore设置不生效或不起作用的问题

偶然遇到的问题,记录如下:

通常我们在push项目时,会有些配置文件或本地文件不想上传到服务器上

这时候我们会通过设置.gitignore  文件

一般设置成这样:

# 20170418 by  51ak  #
###################
*.com
*.txt
*.class
*.dll
*.exe
*.7z
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
*.log
*.sql
*.sqlite
*.pyc
*.excude
*.bak
config.*
.idea
.DS_Store*
ehthumbs.db
Thumbs.db
config.py
setting.py
test.html
bak.html
untitled
.idea

  注意到里面的config.* config.py两个是否重复定义了?

起因是这样的,原意是想屏所有config开头的文件

但发现不起作用,config.py文件照样上传上去了,一开始以为是通配符写错了,还是怎了,又写了个直接文件名的方式

还是不行,改config.py照样上传上去。

看起来像是.gitignore设置不生效或不起作用(想屏的内容屏不掉)

非常麻烦。

后来上网搜了一圈,遇到这个问题的人不止我一个,用这个命令清空缓存,.gitignore的改动设置才能生效。。

git rm -r --cached .

时间: 2024-10-19 09:34:54

git使用.gitignore设置不生效或不起作用的问题的相关文章

Git忽略.gitignore规则不生效的解决办法【转】

在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件). 这个文件每一行保存了一个匹配的规则例如: # 此为注释 – 将被 Git 忽略 *.a # 忽略所有 .a 结尾的文件 !lib.a # 但 lib.a 除外 /TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO build/ # 忽略 build/ 目录下的所有文件 doc/*.txt # 会忽略 doc/not

.gitignore设置不生效

.gitignore git中,如果想要让git忽略某些文件,或不想push到远程库,不让其受版本的控制.可以使用git提供的.gitignore文件进行配置.像这样: 一般情况下,在文件还未修改前,将其路径添加到该文件中,即可生效. 有个特殊情况,当我们修改了一个文件,但又不想让git跟踪它的变化,于是我们将其路径假如到.gitignore文件中:然后使用git status查看状态,发现文件依旧是跟踪状态,.gitignore根本没生效: code 原因在于git已经把该文件加入到cache

Git忽略规则及.gitignore规则不生效的解决办法

Git忽略规则及.gitignore规则不生效的解决办法 在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件 的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注释 – 将被 Git 忽略 *.a       # 忽略所有 .a 结尾的文件 !lib.a    # 但 lib.a 除外 /TODO     # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO build/   

Git .gitignore 设置为全局global

在操作Git时,我们会将修改的内容$git add . 到Git,Git会提示我们哪些文件都修改了.此时提示中会包括系统自动修改的文件,bin文件等.而我们add到Git时,并不希望将这些文件也一同add到Git,但如果不add到Git,Git就会一直提示我们文件被修改了,都需要add. 此时我们需要忽略这些系统自动修改的东西,如果有一些你不想提交到Git的东西,你也可以忽略. Git为我们提供了.gitignore文件,此文件专门来做忽略,只要在此文件中设置你想忽略的内容就可以了. 不需要从头

Git忽略规则和.gitignore规则不生效的解决办法

Git忽略规则: 在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如果没有这个文件,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注释 – 将被 Git 忽略 *.sample # 忽略所有 .sample 结尾的文件!lib.sample # 但 lib.sample 除外/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODObuild/ # 忽略 build/ 目

git指令与设置

相关指令: 1.从远程的master分支上创建新的分支,此时新分支内容与master分支内容相同: git checkout master; git branch newbranch; git checkout newbranch; git commit -a -m 'new branch'; git push origin newbranch; 2.将一个新增的文件a.txt提交到本地仓库: git add a.txt 3.撤销add新增文件 git reset ssh免密码登陆: 1.用ss

(四)github之Git的初始设置

设置姓名与邮箱地址 这里的姓名和邮箱地址会用在git的提交日志之中,在github上公开git仓库时会随着提交日志一起公开. 有两种方式, 第一种,在git bash下设置 第二种, 通过直接编辑.gitconfig 设置(该文件一般在c盘用户文件夹下, 打开文件夹ctrl+f搜索即可)

git push.default设置

转自:http://blog.csdn.net/daijingxin/article/details/51326715 在进行一次空仓库的提交时,我遇到了这个警告 警告如下: warning: push.default 未设置,它的默认值将会在 Git 2.0 由 'matching' 修改为 'simple'.若要不再显示本信息并在其默认值改变后维持当前使用习惯, 进行如下设置: git config --global push.default matching 若要不再显示本信息并从现在开始

关于mysql的wait_timeout参数 设置不生效的问题【转】

关于wait_timeout 有一次去online set wait_timeout 的时候发现改了不生效,如下: mysql> show variables like 'wait_timeout';+---------------+-------+| Variable_name | Value |+---------------+-------+| wait_timeout | 100 |+---------------+-------+1 row in set (0.00 sec) mysq