[git使用技巧] git提交忽略不必要的文件或文件夹
作者:xcbeyond
疯狂源自梦想,技术成就辉煌!微信公众号:《程序猿技术大咖》号主,专注后端开发多年,拥有丰富的研发经验,乐于技术输出、分享,现阶段从事微服务架构项目的研发工作,涉及架构设计、技术选型、业务研发等工作。对于Java、微服务、数据库、Docker有深入了解,并有大量的调优经验。
在使用git用来管理代码后,如果采用eclipse中git插件,可以更加便利的在eclipse中进行代码的提交及更新操作。对于创建的maven项目而言,本地工程项目中往往会有一些本地项目配置文件,而这些配置文件却是不需要提交至版本库的,如maven项目的target文件夹、bin文件夹等。如下图,
实际开发中我们只需提交:src、pom.xml、.gitignore等。
(.gitignore是用来配置忽略文件的配置文件,建议一同提交至版本库,便于其他开发人员使用)
面对上述这种情况,如何做到只提交需要关注提交的文件,而忽略不必要的文件或文件夹,防止本地不必要的文件提交至版本库呢?
git忽略不必要文件有2种方法,一种是命令方法,一种是eclipse安装git插件设置。
方法一:配置文件方法
1.首先在仓库中创建隐藏文件“.gitignore”,选中本地仓库,右击“Git Bash Here”,然后执行如下命令:
touch .gitignore
※项目中一般会自动生成该配置文件
强烈推荐使用配置文件方式,便于其他人使用。
2.用文本编辑器如editplus或notepad++输入需要忽略的文件或文件名,如下所示:
##ignore this file##
/target/
.classpath
.project
.settings
##filter databfile、sln file##
*.mdb
*.ldb
*.sln
##class file##
*.com
*.class
*.dll
*.exe
*.o
*.so
# compression file
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
*.via
*.tmp
*.err
# OS generated files #
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
备注:
/target/ :过滤文件设置,表示过滤这个文件夹
*.mdb ,*.ldb ,*.sln 表示过滤某种类型的文件
/mtk/do.c ,/mtk/if.h 表示指定过滤某个文件下具体文件
!*.c , !/dir/subdir/ !开头表示不过滤
*.[oa] 支持通配符:过滤repo中所有以.o或者.a为扩展名的文件
该方法保证任何人都提交不了这类文件
方法二:eclipse配置
eclipse安装git插件设置:点击“Add Pattern”添加你要过滤的文件,该方法只能保证本地提交过滤,但是提交远程仓库则不会。