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

时间: 2024-11-04 03:46:16

Github .gitignore详解的相关文章

Github Pls Forget Me —— .gitignore详解

忽略某些文件 一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表.通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等.我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件模式.来看一个实际的例子: $ cat .gitignore     *.[oa]     *~ 第一行告诉 Git 忽略所有以 .o 或 .a 结尾的文件.一般这类对象文件和存档文件都是编译过程中出现的,我们用不着跟踪它们的版本.第二行告诉 Git 忽略所有以波

现代软件工程第02次作业————初谈GitHub使用详解以及设计

现代软件工程第二次作业 --初谈GitHub使用详解以及设计 一.目标任务(图文并茂): 1.参照http://www.cnblogs.com/xinz/p/3803109.html的第一题 A.每人创建一个GitHub账号 B.组长创建一个Project C.添加组员进入Project中的Collaborators,并添加zykgnyue为Collaborator. 2.每人创建一个HelloWorld项目. A.练习使用git基本命令add/commit/push/pull/fetch/cl

GitHub入门详解

GitHub详解 GitHub 是一个共享虚拟主机服务,用于存放使用Git版本控制的软件代码和内容项目.它由GitHub公司(曾称Logical Awesome)的开发者Chris Wanstrath.PJ Hyett和Tom Preston-Werner使用Ruby on Rails编写而成.      GitHub同时提供付费账户和为开源项目提供的免费账户.根据在2009年的Git用户调查,GitHub是最流行的Git访问站点.除了允许个人和组 织创建和访问代码库以外,它也提供了一些方便社会

Android Studio中Git和GitHub使用详解

一.Git和GitHub简述 1.Git 分布式版本控制系统,最先使用于Linux社区,是一个开源免费的版本控制系统,功能类似于SVN和CVS.Git与其他版本管理工具最大的区别点和优点就是分布式: git是采用分布式版本库机制,不需要每次都将文件推送到版本控制服务器,每个开发人员都可以从服务器中克隆一份完整的版本库到本地,不用完全依赖于版本控制服务器.[优点:1.代码的发布和合并更加便捷:2.可以离线进行文件提交.创建分支以及查看历史版本信息等操作] Git在文件保存形式上也优于其他的版本控制

github使用详解

github GitHub是一个通过Git进行版本控制的软件源代码托管服务,由GitHub公司(曾称Logical Awesome)的开发者Chris Wanstrath.PJ Hyett和Tom Preston-Werner使用Ruby on Rails编写而成. - 来自 维基百科 我们打开网站, 输入邮箱和密码, 就可以完成简单的注册功能. 创建一个github仓库 Repository name: 要创建git仓库的名子 Description: 这个仓库的简单描述, 让别人很快的了解这

(转).gitignore详解

本文转自http://sentsin.com/web/666.html 今天讲讲Git中非常重要的一个文件——.gitignore. 首先要强调一点,这个文件的完整文件名就是“.gitignore”,注意最前面有个“.”.这样没有扩展名的文件在Windows下不太好创建,这里给出win7的创建方法: 创建一个文件,文件名为:“.gitignore.”,注意前后都有一个点.保存之后系统会自动重命名为“.gitignore”. 一般来说每个Git项目中都需要一个“.gitignore”文件,这个文件

上传本地代码到gitHub过程详解

1.注册github账号. 2.创建个人的github仓库,如图, 或者也可以进入个人中心去创建, 还可以直接点击右上角的“”+“”添加, 3.创建自己的Repository,如图: 4.新建完成后会进入类似于下面的页面,复制创建仓库的地址,如图: 5.打开本地git命令窗口或者cmd命令窗口,cd到你存放项目的根目录下,并执行一下命令行: git clone 仓库地址(上面一步复制出来的地址),如下图,是我复制我创建的仓库地址: 6.打开项目文件夹,会发现刚才在github里面新建的文件都存在

git .gitignore详解

1.最近使用git又遇到一个陷阱: 场景:A和B使用的不同的编译器做的同一个解决方案下的不同的项目工程,刚开始没考虑到版本问题,后来发现A上传的csproj在B需要做很麻烦修改才能打开,后来想到各自用各自的csproj文件,于是打开.ignore文件,添加*.csproj. 后来,,,在pull代码的时候,悲剧的发现我本地的仓库里面的csproj文件也没有了.只有回退版本一个一个复制回来. 解释: 1. /*注:这种方式被忽略的文件只会在提交者的磁盘中保留,如果其他开发者拉取的你的commit后

Git 本地仓库(Repository)详解

大纲: 一.前言 二.概述 三.在Windows上安装Git 四.创建本地仓库 五.本地仓库管理详解 六.总结 注,测试机 CentOS 5.5 x86_64,Git 服务器版本:git version 1.8.2.1,客户端版本:git version 1.9.2.msysgit.0.所有软件请到这里下载:http://msysgit.github.io/. 一.前言 本来呢,其实呢.我以为Git也就几个命令,没什么难的.于是就到网上找了些文章看看,发现这些文章难得不知道该说什么好.不是简单的