Git中有一个非常重要的一个文件-----.gitignore

1、当然如果已经push了怎么办?当然也有解决方法,如下:

有时候在项目开发过程中,突然心血来潮想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:

git rm -r --cached .

git add .

git commit -m 'update .gitignore'

?

2、在版本管理的根目录下(与.Git文件夹同级)创建一个 .gitignore(gitignore是隐藏文件,所以前面有个点)

创建命令:gitignore - Specifies intentionally untracked files to ignore

首先要强调一点,这个文件的完整文件名就是“.gitignore”,注意最前面有个“.”。这样没有扩展名的文件在Windows下不太好创建,这里给出win7的创建方法:创建一个文件,文件名为:“.gitignore.”,注意前后都有一个点。保存之后系统会自动重命名为“.gitignore”。一般来说每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。实际项目中,很多文件都是不需要版本管理的,比如Python的.pyc文件和一些包含密码的配置文件等等。

项目中有clist.h clist.c main.c三个文件,编译执行后,生成了三个文件 clist.o main.o main(执行文件)。这三个文件是不需要进行版本管理的,所以需要忽略这些文件,使用 git stauts查看后,发现这三个文件也是处于 Untracked files状态。而实际上我们是想忽略他。

使用gitignore文件来解决这个问题,步骤是:

[plain] view plain copy

S1: touch .gitignore #创建gitignore隱藏文件

S2: vim .gitignore #编辑文件,加入指定文件

#下面是我的gitignore文件的内容

#忽略gitignore文件

.gitignore

#忽略后缀名为.o和.a的文件

*.[oa]

#显示指定忽略名称为main的文件

main

文件.gitignore的格式规范:

A:#为注释

B:可以使用shell所使用的正则表达式来进行模式匹配

C:匹配模式最后跟"/"说明要忽略的是目录

D:使用!取反(例如目录中包含 test.a,并且gitignore文件中包含 *.[oa],如果在文件中加入 !test.a 表明忽略除test.a文件以外的后缀名为.a或者.o的文件)

配置完.gitignore文件后,执行git status命令,会发现那三个文件不再是Untracked files了,也就完成了忽略指定文件的功能。

eg:

# 此为注释 – 将被 Git 忽略

*.a                         # 忽略所有 .a 结尾的文件

!lib.a                      # 但 lib.a 除外

/TODO                   # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO

build/                      # 忽略 build/ 目录下的所有文件

doc/*.txt                  # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

3、 .gitignore最强配置清单 如下:

/gradle/wrapper/gradle-wrapper.properties

##----------Android----------

# build

*.apk

*.ap_

*.dex

*.class

bin/

gen/

build/

# gradle

.gradle/

gradle-app.setting

!gradle-wrapper.jar

build/

local.properties

##----------idea----------

*.iml

.idea/

*.ipr

*.iws

# Android Studio Navigation editor temp files

.navigation/

##----------Other----------

# osx

*~

.DS_Store

gradle.properties

作者:多光束叠加的梦
链接:https://www.jianshu.com/p/f77be6eb643f

Github的.gitignore忽略文件的更多相关文章

  1. 详解Github的.gitignore忽略文件+.gitignore不生效解决方案+生产配置大奉送

    详解Github的.gitignore忽略文件+.gitignore不生效解决方案+生产配置大奉送 Git中有一个非常重要的一个文件-----.gitignore 今天给大家免费送一个.gitigno ...

  2. 码源中国.gitignore忽略文件配置

    码源中国.gitignore忽略文件配置 ## Ignore Visual Studio temporary files, build results, and ## files generated ...

  3. Github用.gitignore忽略指定文件

    .gitignore Github提供.gitignore这种功能,可以自己指定哪些文件可以不被管理.具体方法是在版本管理的根目录下(与.git文件夹同级)创建一个.gitignore. 应用实例 项 ...

  4. Git中使用.gitignore忽略文件的推送

    转载自:https://blog.csdn.net/lk142500/article/details/82869018 windows下可以用另存为生成gitignore 文件 1 简介 在使用Git ...

  5. 使用.gitignore忽略文件

    单个项目配置 在.git文件夹同目录下打开git bash,执行命令: touch .gitignore 生成“.gitignore”文件. 在”.gitignore” 文件里输入你要忽略的文件夹及其 ...

  6. Git中.gitignore忽略文件(maven项目)

    使用情景: 有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们 解决方案: 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略 ...

  7. git中 gitignore 忽略文件操作

    通常,.gitignore文件被放置在存储库的根目录中.根目录也称为父目录和当前工作目录.根文件夹包含组成项目的所有文件和其他文件夹.也就是说,您可以将它放在存储库中的任何文件夹中.你甚至可以有多个. ...

  8. gitignore 忽略文件夹

    上面问题,按理说只要在.gitignore文件中加上 /dockAni/Library/ 即可实现. 但是我这样做了以后却发现sourceTree中仍然会列出Library中的文件. 最后在这个帖子中 ...

  9. gitignore 忽略文件

    *.project*.prefs*.classpath*.gitignore#ignore thumbnails created by windowsThumbs.db#Ignore files bu ...

  10. Git忽略文件方法【转】

    转自:http://www.cnblogs.com/shangdawei/archive/2012/09/08/2676669.html http://cwind.iteye.com/blog/166 ...

随机推荐

  1. Springboot 拦截器的配置

    在Springboot项目中添加拦截器,分两步: 1:创建一个拦截器类 2:配置拦截器 以上步骤完成就可以使用了,下面来添加拦截器: 1:创建一个拦截器类 MyInteceptor 继承 Handle ...

  2. 微信电脑版 v3.9.2.12 绿色便携版

    修改历史: 2023.03.01:自改官方 3.9.2.12 最新正式版本2023.01.31:自改官方 3.9.0.28 最新正式版本2023.01.11:自改官方 3.9.0.21 最新正式版本- ...

  3. 安装centos,ubuntu系统

    安装centos系统 1.首先进入VMware,新建虚拟机,选择典型,然后下一步 2.稍后安装系统,下一步 3.因为此次安装的是centos7.9系统,因此版本选择7 64位,下一步 4.选择虚拟机的 ...

  4. Centos 7.9 部署Kubernetes集群 (基于containerd 运行时)

    前言 当Kubernetes社区宣布1.20版本之后会逐步弃用 dockershim ,当时也有很多自媒体在宣 传Kubernetes弃用Docker.其实,我觉得这是一种误导,也许仅仅是为了蹭热度. ...

  5. u盘重装系统后怎么恢复成普通u盘使用,U盘启动盘还原的方法

    1.先将u盘插入到电脑,然后在电脑上按下win+r快捷键打开运行菜单,输入"cmd"回车确定打开命令提示符页面.   2. 然后在命令提示符输入"diskpart&quo ...

  6. postman-增加全局环境变量

    var jsonData = pm.response.json(); var accessTokenForMip = jsonData.data.access_token; //tests[acces ...

  7. xrdp 启动分析

    前言:xrdp模块说明 参考文档:xrdp-genkeymap man page - xrdp - System Administration (mankier.com) xrdp:远程桌面协议 (R ...

  8. ubuntu拨号上网与以太网

    拨号上网使用的是ppp协议,主机和主机之间是点对点连接的,通常使用掩码255.255.255.255的方式来表示一个点对点连接. 以太网:使用的以太网协议. 拨号上网和以太网是两个完全不同的东西,如果 ...

  9. MySQL无法同时执行多条语句解决办法 Dbeaver

    一.场景 说明:在数据库中同时执行多条语句,提示语法错误,如下图: 二.解决办法 第一步:在每条语句最后加上分号(;)表示本条语句结束: 第二步:在数据库连接串上设置 allowMultiQuerie ...

  10. andriod升级保错问题归类

    https://developer.aliyun.com/article/1116339 https://www.jianshu.com/p/5d9c790ab958 https://blog.51c ...