1477 Stimmen

Ignorieren Sie ein "bin"-Verzeichnis in einem Git-Projekt.

Ich habe eine Verzeichnisstruktur wie diese:

.git/
.gitignore
main/
  ...
tools/
  ...
...

In main und tools und jedem anderen Verzeichnis auf jeder Ebene kann es ein 'bin'-Verzeichnis geben, das ich ignorieren möchte (und ich möchte auch alles darunter ignorieren). Ich habe jede dieser Muster in .gitignore ausprobiert, aber keines funktioniert:

/**/bin/**/*
/./**/bin/**/*
./**/bin/**/*
**/bin/**/*
*/bin/**/*
bin/**/*
/**/bin/* #und die anderen auch mit nur * am Ende

Kann mir jemand helfen? Das erste Muster (das meiner Meinung nach funktionieren sollte) funktioniert nur, wenn ich dies tue:

/main/**/bin/**/*

Aber ich möchte keinen Eintrag für jedes Top-Level-Verzeichnis haben und ich möchte nicht jedes Mal .gitignore ändern müssen, wenn ich ein neues hinzufüge. Es gibt auch Dateien und Verzeichnisse, die den Teil "bin" in ihren Namen haben, die ich behalten möchte.

Dies ist auf Windows mit dem neuesten msysgit.

22 Stimmen

Vermutlich wird es für jemanden hilfreich sein: Wenn Sie nur wenige Repositories haben und jedes dieselbe .gitignore-Datei hat, können Sie sie an einem "gemeinsamen" Ort platzieren und dann > git config --global core.excludesfile ~/.gitignore_global ausführen. Der letzte Parameter ist der Pfad zum gemeinsamen Ort. P.S. Ich bin neu bei git und bin mir nicht sicher, ob das eine 'Best Practice'-Empfehlung ist. Bitte lassen Sie mich wissen, falls Sie das nicht tun möchten. Vielen Dank.

0 Stimmen

Die **-Syntax scheint jetzt (März 2013, git 1.8.2) offiziell dokumentiert zu sein: siehe meine Antwort unten

3 Stimmen

Wenn jemand die aktuellste Version der tatsächlichen Handbuchseite lesen möchte, siehe gitignore(5) Handbuchseite.

1voto

Jacek Plesnar Punkte 391

In meinem Fall war die Codierung der gitignore-Datei problematisch, überprüfen Sie, ob sie UTF-8 ist

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X