在 git 中忽略文件 gitignore 与 exclude

一、在git中如想忽略掉某个文件或文件夹,不让提交到版本库中,可在仓库目录里添加个".gitignore"的文件,这个文件每一行保存了一个匹配的规则,如
# 此为注释 – 将被 Git 忽略
*.a       # 忽略所有 .a 结尾的文件
!lib.a    # 但 lib.a 除外
/TODO     # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/    # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

二、git提供了一个全局的.gitignore,你可以在你的用户目录下创建 ~/.gitignoreglobal 文件,以同样的规则来划定哪些文件是不需要版本控制的。需要执行“git config --global core.excludesfile ~/.gitignoreglobal”来使得它生效。这里有一个例子:

# 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
Icon?
ehthumbs.db
Thumbs.db

三、git还提供了另一种排出的方式来做同样的事情,即在.git/info/exclude这里设置的你要排出的文件。他不会影响到其他人,也不会提交到版本库中去。请注意与第一种方法的区别!

四、.gitignore 还有个有意思的小功能,一个空的 .gitignore 文件可以当作是一个placeholder。如当你需要为项目创建一个空的log目录时,这就变的很有用。使用方法:创建一个log目录在里面放置一个空的.gitignore文件,当你clone这个repo的时候git会自动的创建好一个空的log目录了。


补充:
1、如果已经git add之后想删除某条记录,可以使用git rm来从记录文件里删除记录避免被commit执行。
2、删除以前提交的commit,可push push -f origin。


参考资料:
1、在 git 中忽略文件 gitignore 与 exclude


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值