Git 教程之 设置 .gitignore, IDEA 安装插件以及设置全局文件
在使用GitHub 或者 GitLab 等分布式代码管理平台时,我们在进行代码提交的时候,往往不需要把所有的东西,比如一些无用的文件或者隐私的文件不需要进行上传,那个Git 提供 .gitignore 文件用来忽略不想要上传的问题。
IDEA 安装 git文件忽略插件 .gitignore
idea 在使用git进行提交的时候只需要提交源码之类的,并不需要把.idea/
以及target
等目录下的文件进行提交,通过安装插件可以快捷生成.gitignore文件。
安装插件
File -> Settings -> Plugins 搜索框搜索.ignore,点击安装
生成初始.ignore文件
生成的过程如下图所示:
点击后会到下面的页面,选择语言为Maven 和 JetBrains ,点击generate
这样在上传的时候就不会把一些比如target 目录下的以及 .idea 目录下的文件上传了。当然这个有点麻烦,下面介绍如何设置全局ignore文件。
Git 设置 全局ignore 文件
在安装配置好Git之后,会在c盘的用户文件夹下有.gitconfig
文件,这个文件配置了Git的所有,你用编辑器打开后可以看到里面就是我们之前配置的比如用户名和邮箱等内容:
这里需要关注一下[core]
这个标签,一会我们在这个下面指定我们的.gitignore 文件。
在c盘的用户目录下打开 gitbash,然后用touch 命令新建一个.gitignore
文件:
用编辑器打开这个文件,然后填写规则,当然你可以填写自己需要的,这里我在网上找了一个比较全的配置,大家可以参考:
# DIY
target/
# svn
.svn/
# Linux System
*~
# KDE directory preferences
.directory
# Linux trash folder which might appear on any partition or disk
.Trash-*
# Windows System
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msm
*.msp
# Windows shortcuts
*.lnk
# OSX System
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
# Eclipse
*.pydevproject
.metadata
.gradle
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.settings/
.loadpath
# Eclipse Core
.project
# External tool builders
.externalToolBuilders/
# Locally stored "Eclipse launch configurations"
*.launch
# CDT-specific
.cproject
# JDT-specific (Eclipse Java Development Tools)
.classpath
# Java annotation processor (APT)
.factorypath
# PDT-specific
.buildpath
# sbteclipse plugin
.target
# TeXlipse plugin
.texlipse
# JetBrains
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio
*.iml
## Directory-based project format:
.idea/
# if you remove the above rule, at least ignore the following:
# User-specific stuff:
# .idea/workspace.xml
# .idea/tasks.xml
# .idea/dictionaries
# Sensitive or high-churn files:
# .idea/dataSources.ids
# .idea/dataSources.xml
# .idea/sqlDataSources.xml
# .idea/dynamic.xml
# .idea/uiDesigner.xml
# Gradle:
# .idea/gradle.xml
# .idea/libraries
# Mongo Explorer plugin:
# .idea/mongoSettings.xml
## File-based project format:
*.ipr
*.iws
## Plugin-specific files:
# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
# JAVA
*.class
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.ear
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
#Maven
target/
**/target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
logs/
把这个文件的全路径复制然后配置给git,两种方式
- 使用命令的方式设置
使用的方式和我们在git中设置用户名和邮箱是一样的。在git 的窗口输入如下命令:git config --global core.excludesfile ~/.gitignore
效果:
这样我们再打开上面所说的.gitconfig
文件,就会发现已经配置上去了。
- 直接配置的方式
可以看到用命令的方式最后是配置在这个文件中,name我们可以直接在配置文件中配置,效果是一样的。
使用测试
配置好之后好不好用呢?我们可以试一试。
- 在gitee中新建一个仓库,不给他初始化gitignore,然后克隆下来。
- 在目录中新建一个
.idea
文件夹,并在里面新建一个文件,然后提交。
- 然后在仓库查看
发现并没有把.idea 文件夹提交上去,验证成功!