icancode.de

Programmierung

gitignore.io – nie wieder basteln

Veröffentlicht am .

gitignore.io – nie wieder basteln

Einleitung

Compilierte Daten haben in einem Repository in der Regel nichts zu suchen. Wenn ich mit Git arbeite, habe ich die einfache Möglichkeit, eine gitignore-Datei zu erstellen, die festlegt, welche Dateien und Ordner ich nicht in meinem Repository haben will. Github und Co. bieten mittlerweile die Möglichkeit an, eine solche Datei zu erstellen. Diese bezieht sich jedoch meistens nur auf eine Sprache. Das muss doch auch einfacher gehen.

gitignore.io

gitignore.io ist ein Webservice, der die Erstellung von gitignore-Dateinbernimmt. Die Seite besteht nur aus einem einzigen Eingabefeld, in welches die gewünschten Betriebssysteme, IDEs und Programmiersprachen eingegeben werden können. Die Webseite zeigt über Autovervollständigung an, ob für die Eingabe Einträge vorhanden sind.

Sprachen und IDEs

Sprachen und IDEs

Angenommen ich starte ein neues Projekt mit Maven und Java. Dann kann ich dies einfach in die Maske eintragen. Nun benötige ich noch die Entwicklungsumgebungen. Sicherheitshalber füge ich also EclipseNetBeans und IntelliJ hinzu. Damit habe ich die drei großen abgedeckt und überlasse jedem Entwickler die Wahl seiner Entwicklungsumgebung. Um wirklich sicher zu gehen, dass mein Repository sauber ist, werden noch die verschiedenen Betriebssysteme hinzugefügt. Damit verschwinden beispielsweise Dateien wie .DS_Store von MacOS, ~ Dateien von Linux und Desktop.inis von Windows.

Vollständige Eingabe

Vollständige Eingabe

Die fertige gitignore sieht dann wie folgt aus:

# Created by https://www.gitignore.io

### 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/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties


### Eclipse ###
*.pydevproject
.metadata
.gradle
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.settings/
.loadpath

# External tool builders
.externalToolBuilders/

# Locally stored "Eclipse launch configurations"
*.launch

# CDT-specific
.cproject

# PDT-specific
.buildpath

# sbteclipse plugin 
.target

# TeXlipse plugin
.texlipse


### NetBeans ###
nbproject/private/
build/
nbbuild/
dist/
nbdist/
nbactions.xml
nb-configuration.xml


### Intellij ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm

/*.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


### OSX ###
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear on external disk
.Spotlight-V100
.Trashes

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk


### Linux ###
*~

# KDE directory preferences
.directory


### Windows ###
# 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
Rico Magnucki

Rico Magnucki

http://magnucki.de

21st Century Digital Boy und Blog-Gründer. Studiert naturwissenschaftliche Informatik in Bielefeld. Auf dem Blog ist er der Ansprechpartner für LaTeX, schreibt Tutorials, dreht die Videos für YouTube und durchforstet das Internetz nach spannenden Dingen.

Navigation