zoukankan      html  css  js  c++  java
  • .gitignore文件详细说明

    简介

    有些时候,你必须把某些文件放到 Git 工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件、Java编译生成的.class文件。处理这个需求很简单,从不git add它们就可以。但这样处理,每次git status时都会出现Untracked files,很不爽。

    这时候就轮到.gitignore文件出场了。我们可以在仓库根目录创建.gitignore文件,在文件中添加不希望git追踪的文件路径,比如:

    # window下自定义文件图标后,自动生成的文件
    desktop.ini
    

    再比如:

    # IDE idea 和 VS Code的配置文件目录
    .idea/
    .vscode/
    

    特殊符号

    符号 作用
    # 注释
    恢复追踪
    ? any one character except /
    * anything except /
    空格 多余的空格会被忽略,如果pattern中的空格不能忽略,用括起来
    转移字符 上面的符号如果出现在要匹配的文件或目录名中,要用转移后才能匹配,比如!important!.txt

    注意

    //*

    /忽略整个目录;/*只忽略目录里的文件,但git仍然追踪这个目录

    !

    如果文件所在的目录被忽略了,这个文件无法恢复追踪;

    • # 目标: 不追踪doc目录下的所有文件和目录,除了doc/text.txt
      # 正确写法
      /doc/*
      !doc/text.txt
      
      # 错误写法
      # 原因 :doc目录被忽略了,文件无法恢复追踪
      /doc/
      !doc/text.txt
      

    恢复时,要注意必须先恢复最上层

    • # 目标 : 只追踪doc/123.txt文件
      
      # 正确写法
      /*
      !/doc/
      /doc/*
      !/doc/123.txt
      
      # 错误写法
      # 原因 : 这个文件所在目录doc被忽略了,这个文件因为无法恢复追踪
      /*
      !/doc/123.txt
      

    ***

    **可以用来匹配多层目录

    • # 只能匹配a的二级子目录的b, 比如a/x/b
      /a/*/b
      # 可以匹配a的任意级子目录的b,比如a/b, a/x/b, a/x/y/b ...
      /a/**/b
      

    常用配置

    官方配置

    Github有提供一些.gitignore的常用模板

    本人配置

    自己的SpringBoot项目配置

    # 只追踪 源码目录、maven配置文件、README
    /*
    !/src/
    !pom.xml
    !README.md
    
    # 源码目录中忽略的文件
    # 测试文件,暂时没做测试,忽略
    /src/test
    # 包含敏感数据的文件
    /src/main/resources/application.properties
    /src/main/resources/mybatis-generator.xml
    
  • 相关阅读:
    PTA 乙级 1064 朋友数 (20分) C++
    关于Symbol.iterator 学习笔记
    JS函数传递参数是是按值传递
    使用Nginx做反向代理的配置
    动态修改svg的颜色,svg做背景色时候修改颜色
    macos停止MySQL服务
    git-flow-avh的使用过程
    appium+rf APP自动化问题七----点击图片下方的文字无法实现页面跳转
    appium+rf 问题六--appium setting和unlock在设备上重复安装
    python3报错---Error in sitecustomize; set PYTHONVERBOSE for traceback: NameError: name 'reload' is not defined
  • 原文地址:https://www.cnblogs.com/uoa7/p/13053833.html
Copyright © 2011-2022 走看看