#####standard .git ignore entries#####

## IDE Specific Files ##
org.eclipse.core.resources.prefs
.classpath
.idea
.externalToolBuilders
.checkstyle
maven-eclipse.xml
workspace

## Compilation Files ##
*.class
**/target
target
target-ide
MANIFEST.MF

## Misc Ignores (OS specific etc) ##
bin/
dist
*~
*.ipr
*.iml
*.iws
classes
out/
.DS_STORE
.metadata
__pycache__
env/
