有时候工作区中会有我们创建的一些密码配置文件,或者自动生成的一些临时文件,比如python代码编译产生的.pyc文件和java代码编译产生的.class文件等,我们在提交代码的时候没有必要把这些文件也提交。这时就可以用.gitignore文件来指定提交时需要忽略的文件/文件夹列表,那么下次提交时这些文件就不会被提交到本地和远程的代码库中。

已有的.gitignore文件大全

链接:https://github.com/github/gitignore

针对各种语言的,可以直接拿来用。在github上创建远程仓库的时候,也可以直接指定选择哪些.gitignore文件。

自己创建.gitignore文件

  • 在当前本地git仓库根目录下,创建一个名为".gitignore"的文件,并在其中按如下格式写入要忽略的文件/文件夹:
# i will ignore these files:
*.dll
*.class
*.pyc
debug/*

注:第1行"#"后面的是注释,第2~4行分别表示要忽略*.dll、*.class、*.pyc文件,最后一行表示忽略掉debug目录及目录的所有内容。

  • 保存并提交该.gitignore文件。

  • git status命令再查看状态,发现工作区的状态已经是clean了,没有再提示*.dll、*.class、*.pyc这些类型的文件和debug目录下的文件未提交了。

清除已经提交的文件

比如在配置.gitignore文件之前,就不小心提交了一些dll文件和debug目录下的文件,现在想清除仓库中的这些文件,那么可以这样办:

git rm *.dll
git rm -r debug
git rm --cached *.dll
git rm –r --cached debug
git commit -m "清除缓存"

执行完之后发现代码库中就没有这些文件/文件夹了。

修改git的全局配置

上面添加了.gitignore文件之后,只会对当前仓库产生影响,那么如果想把这个.gitignore文件作为全局配置,该怎么办呢?

  • 创建一个.gitignore_global文件,添加要忽略的文件/文件夹清单。

  • 执行命令:git config --global core.excludesfile .gitignore_global即可。

随机推荐

  1. QT creator 编辑多个UI 文件 出现 无法解析的外部符号的错误

    创建一般的Qt Gui 程序一般会默认一个UI 文件 ,但是随着应用程序窗口的增多,同时编辑多个UI 界面是必须的. 假设我们已经创建好了一个QTUI的工程,里面已经默认了一个UI文件,但是想在添几个 ...

  2. python 数据提取之JSON与JsonPATH

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写.同时也方便了机器进行解析和生成.适用于进行数据交互的场景,比如网站前台与 ...

  3. Matrix_tree Theorem 矩阵树定理学习笔记

    Matrix_tree Theorem: 给定一个无向图, 定义矩阵A A[i][j] = - (<i, j>之间的边数) A[i][i] = 点i的度数 其生成树的个数等于 A的任意n ...

  4. 【SR】论文资源相关

    1. Anchored Neighborhood Regression for Fast Example-Based Super-Resolution Radu Timofte, Vincent De ...

  5. php数据库操作命令精华大全

    1.表结构//列信息2.表数据//行信息3.表索引//把列中的行加到索引中(一般情况下一个表一定要把id这一列的所有数据都加到主键索引中) 2.[dos下]关闭mysql:net stop mysql ...

  6. Eclipse Android 代码自己主动提示功能

    Eclipse Android 代码自己主动提示功能 Eclipse for android 实现代码自己主动提示智能提示功能.介绍 Eclipse for android 编辑器中实现两种主要文件 ...

  7. Android 7.1.1 锁屏界面启动流程

    前几天遇到一个低概率复现锁屏界面不显示,仅仅显示状态栏的问题,跟了下锁屏界面启动显示的流程,在这分享下,也方便以后自己查看.前面简介了下Zygote启动流程, Zygote进程启动后会首先创建一个Sy ...

  8. Linux下自动调整时间和时区与Internet时间同步

    (原文链接) 调整linux系统时间和时区与Internet时间同步一.修改时区:# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime修改为中国的 ...

  9. CentOS firewalld 防火墙操作

    Centos 7 开启端口CentOS 7 默认没有使用iptables,所以通过编辑iptables的配置文件来开启80端口是不可以的 CentOS 7 采用了 firewalld 防火墙 如要查询 ...

  10. 10013: An attempt was made to access a socket in a way forbidden by its access permissions

    nginx的error.log日志报错: 2018/01/25 11:55:22 [emerg] 3380#15488: bind() to 0.0.0.0:20003 failed (10013: ...