Ich weiß, dass ich zu spät zur Party komme, aber hier ist meine Antwort.
Wie @Joakim sagte, um eine Datei zu ignorieren, können Sie etwas wie das Folgende verwenden.
# Ignore everything
*
# But not these files...
!.gitignore
!someFile.txt
Wenn sich die Datei jedoch in verschachtelten Verzeichnissen befindet, ist es etwas schwierig, die Regeln manuell zu schreiben.
Zum Beispiel, wenn wir alle Dateien in einem git
Projekt überspringen möchten , aber nicht a.txt
die, in denen sich befindet aDir/anotherDir/someOtherDir/aDir/bDir/cDir
. Dann wird unser .gitignore
Wille so etwas sein
# Skip all files
*
# But not `aDir/anotherDir/someOtherDir/aDir/bDir/cDir/a.txt`
!aDir/
aDir/*
!aDir/anotherDir/
aDir/anotherDir/*
!aDir/anotherDir/someOtherDir/
aDir/anotherDir/someOtherDir/*
!aDir/anotherDir/someOtherDir/aDir/
aDir/anotherDir/someOtherDir/aDir/*
!aDir/anotherDir/someOtherDir/aDir/bDir/
aDir/anotherDir/someOtherDir/aDir/bDir/*
!aDir/anotherDir/someOtherDir/aDir/bDir/cDir/
aDir/anotherDir/someOtherDir/aDir/bDir/cDir/*
!aDir/anotherDir/someOtherDir/aDir/bDir/cDir/a.txt
Das oben angegebene .gitignore
Datei überspringt alle Verzeichnisse und Dateien außer!aDir/anotherDir/someOtherDir/aDir/bDir/cDir/a.txt
Wie Sie vielleicht bemerkt haben, ist es schwierig, diese Regeln zu definieren.
Um diese Hürde zu lösen, habe ich eine einfache Konsolenanwendung namens git-do-not-ignore erstellt, die die Regeln für Sie generiert. Ich habe das Projekt in Github mit detaillierten Anweisungen gehostet .
Anwendungsbeispiel
java -jar git-do-not-ignore.jar "aDir/anotherDir/someOtherDir/aDir/bDir/cDir/a.txt"
Ausgabe
!aDir/
aDir/*
!aDir/anotherDir/
aDir/anotherDir/*
!aDir/anotherDir/someOtherDir/
aDir/anotherDir/someOtherDir/*
!aDir/anotherDir/someOtherDir/aDir/
aDir/anotherDir/someOtherDir/aDir/*
!aDir/anotherDir/someOtherDir/aDir/bDir/
aDir/anotherDir/someOtherDir/aDir/bDir/*
!aDir/anotherDir/someOtherDir/aDir/bDir/cDir/
aDir/anotherDir/someOtherDir/aDir/bDir/cDir/*
!aDir/anotherDir/someOtherDir/aDir/bDir/cDir/a.txt
Es gibt auch eine einfache Web - Version hier
Vielen Dank.