四、在pycharm中添加.gitignore文件的语法使用详解

背景: 在一些项目中我并不希望本地仓库的所有文件都上传到远程仓库,而是有选择的上传,因此git引入了.gitignore文件,使用该文件来选择性的上传文件

1. .gitignore文件内容的语法说明:

  • 注释使用#开头,后面跟注释内容
  • 感叹号“ !”,不忽略指定的文件或者文件夹,如:!a.txt,不忽视a.txt文件
  • 星号 “” ,匹配多个字符,如:.log ,忽视所有后缀为.log的文件
  • 问号“?”,匹配除 ‘/’ 外的任意一个字符
  • 方括号"[XXXX]",匹配多个列表中的字符
  • 斜杠后紧跟两个连续的星号“**”,表示多级目录
  • 斜杠“/”,斜杠在前:匹配项目跟目录,如:/name,则表示指定路径下的名为name的文件或者文件夹
  • 斜杠“/”,斜杠在后:匹配项目跟目录,如:name/,则表示无指定路径下在名为name的文件夹

2.案例

  • 只上传一个空文件夹,不想上传里面的文件,如:项目下的logs文件夹

解决办法:在logs里面创建一个.gitignore文件,里面写入:
!.gitignore

或者 logs/*

  • 上传某个文件夹下的某个文件,其他文件忽视,如:logs/xxx.log

解决办法:在logs里面创建一个.gitignore文件,里面写入:
!.gitignore
! xxx.log

  • 不想上传某个目录下mtk文件或者是mtk的文件夹,在可以在该目录下创建.gitignore文件,里面写入:

!.gitignore
mtk

  • 不想上传某个目录下载smock文件夹,则可以在该目录下创建.gitignore文件,里面写入:

!.gitignore
smock/

3. .gitignore生效时性

.gitignore文件只会咋第一次提交的时候写入缓存,如果你在第一次提交项目的时候忘记了写.gitignore文件,有的无用文件已经上传到git上了,后来在补充.gitignore文件对于已经上传到git上的文件是无效的,意思是你再次提交代码时,第一次提交提交过的文件是不会被忽视的,还会存储在git上

解决办法:

git rm -r --cached #清除所有的缓存,再次提交代码时,.gitignore就可以生效了

你可能感兴趣的:(测试环境,pycharm,git,ide)