git ignoriere die Ausnahme nicht wie gewünscht

8

WinXP + mysisGit1.7

In meiner .gitignore-Datei kann Demos/path/to/file/file.cpp jedoch nicht von git verfolgt werden.

Ich habe folgende Einträge:

%Vor%

Der absolute Pfad ist: c:\Project\Demos\path\to\file\file.cpp

Was könnte falsch sein? Bitte helfen, danke.


BEARBEITEN:

Ich habe herausgefunden, wie mysisGit .gitignore unter WindowsXP nur bestimmte Dateitypen ignorieren und dann einige Dateien desselben Typs ausschließen kann. Zum Beispiel:

%Vor%

Es funktioniert nicht Ordner ignorieren und einige Dateien in diesem Ordner ausschließen. Unten wird nicht funktionieren:

%Vor%

Noch

%Vor%

Ich stelle jedoch fest, dass es eine Ausnahme gibt. Es gibt eine Möglichkeit, Dateien direkt unter dem ignorierten Ordner (nicht in seinem Unterordner) auszuschließen. Das funktioniert.

%Vor%

Aber dieser Weg ist nur begrenzt, wenn sich die Datei nicht in einem Unterordner befindet, also ist es nicht so nützlich.

Also habe ich am Ende immer noch die meisten Quelldateien, sogar ich war nur an ein paar Dateien interessiert, während ich einige andere große Projekte verfolgte. Was bedeutet, dass es eine Reihe von Dateien gibt, die ich nicht berühre, die ich aber trotzdem binden muss.

Hier ist ein anderer Thread , der ähnlich war Problem.

    
Stan 08.09.2010, 13:02
quelle

4 Antworten

8

Ihre .gitignore -Ausnahme funktioniert nicht, weil "es nicht möglich ist, eine Datei erneut aufzunehmen, wenn ein übergeordnetes Verzeichnis dieser Datei ausgeschlossen ist" [ Quelle ].

Als hässliche, aber funktionierende Problemumgehung sollten Sie dies auf jeder Verzeichnisebene auf dem Pfad zu Ihrer Datei tun:

  1. Schließen Sie den gesamten Inhalt des Verzeichnisses aus
  2. fügen Sie das Unterverzeichnis, das zu Ihrer Datei (oder schließlich zu Ihrer Datei) führt, wieder ein.

Ihre Einträge würden so aussehen, wobei jeder zweizeilige Abschnitt diese Schritte für eine Ebene der Verzeichnishierarchie ausführt:

%Vor%

Sie fangen also nicht damit an, Demos/ wie den Autor der Frage auszuschließen. Es ist ein übergeordnetes Verzeichnis unserer Datei, Sie müssten es also gleich wieder einfügen. Beginnen Sie stattdessen mit dem Ausschluss des Inhalts : Demos/** .

    
tanius 24.08.2014 18:53
quelle
1

Fügen Sie zu .gitignore wie folgt hinzu:

%Vor%

Aber stellen Sie sicher, dass mindestens eine Datei aus dem Ordner folderUnderRepoRoot zum git-Index hinzugefügt wurde.

    
quelle
0

Können Sie es stattdessen mit !/Demos/path/to/file/file.cpp ersetzen (beachten Sie den führenden Schrägstrich hinter dem Ausrufezeichen) und versuchen Sie es erneut?

    
Manoj Govindan 08.09.2010 13:04
quelle
0

Wenn es nur eine Datei ist, würde ich normalerweise .gitignore

nicht ändern

Folgendes sollte .gitignore ignorieren und Ihnen erlauben, die Datei

hinzuzufügen %Vor%     
cortopy 05.10.2015 14:08
quelle

Tags und Links