zoukankan      html  css  js  c++  java
  • Github .gitignore详解


         在使用git作版本控制时,git会默认把git控制的文件夹里面的所有文件都加入到版本控制。但是在实践中,我们经常会遇到不想某些文件或文件夹被git追踪的情况.比如logs文件、代码构建过程中产生的一些列文件,要解决这种问题,通常情况下我们需要创建一个文件格式后缀名为.gitignore的文件,来控制哪些文件不被git追踪.

    下面是一个简单的.gitignore文件

        # 此为注释 ,将被 Git 忽略
        # 忽略所有 .a 结尾的文件
        *.a
        # 但 lib.a 除外
        !lib.a
        # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
        /TODO
        # 忽略 build/ 目录下的所有文件
        build/
        # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
        doc/*.txt
        # 会忽略掉 doc/ 里面所有的txt文件,包括子目录下的(**/ 从 Git 1.8.2 之后开始支持 **/ 匹配模式,表示递归匹配子目录下的文件)
        doc/**/*.txt
    local.properties #过滤具体文件
    !local.properties#添加具体文件
    *.[oa]#忽略所有以 .o 或 .a 结尾的文件

    被过滤掉的文件就不会出现在你的GitHub库中了,当然本地库中还有,只是push的时候不会上传

    注意:如果你不慎在创建.gitignore文件之前就push了项目,那么即使你在.gitignore文件中写入新的过滤规则,这些规则也不会起作用,Git仍然会对所有文件进行版本管理。


    下面是gitignore文件的书写规则:
    空白或者以#开始的文字将被忽略, 注释一行可以用 #.
    可以使用通配符,例如*.
    使用 / 结束可以匹配文件夹,比如 doc/ 将匹配doc文件夹.
    使用’!'来声明一个非语句. 比如!lib.txt 将不会忽略lib.txt

    其实很简单,了解了基本规则之后就可以书写自己的gitignore文件了,下面这个是github提供的一些常用的gitignore规则,可以试着去理解下.
    当然大招在这,github上一个开源的All in One .gitignore,总有一款适合你.
    # Compiled source #
    ###################
    *.com
    *.class
    *.dll
    *.exe
    *.o
    *.so

    # Packages #
    ############
    # it's better to unpack these files and commit the raw source
    # git has its own built in compression methods
    *.7z
    *.dmg
    *.gz
    *.iso
    *.jar
    *.rar
    *.tar
    *.zip

    # Logs and databases #
    ######################
    *.log
    *.sql
    *.sqlite

    # OS generated files #
    ######################
    .DS_Store
    .DS_Store?
    ._*
    .Spotlight-V100
    .Trashes
    ehthumbs.db
    Thumbs.db

  • 相关阅读:
    Slf4j框架的用法
    常用框架介绍
    Spring整合Kafka(Spring-Kafka)
    Java并发容器
    kafka多线程消费
    kafka简介
    kafka-clients介绍
    windows搭建kafka
    rocketmq-client使用
    Window搭建部署RocketMQ
  • 原文地址:https://www.cnblogs.com/langtianya/p/5748885.html
Copyright © 2011-2022 走看看