.gitIgnorieren Sie bestimmte Dateien nicht

Lesezeit: 4 Minuten

Ich versuche zu verwenden .gitignore Datei auszuschließen templates.js gelegen in public/app/ Mappe. Mein .gitignore Datei sieht so aus:

/vendor
/node_modules
composer.phar
composer.lock
.DS_Store
templates.js

Aber wenn ich das Git Gui einchecke, wird die templates.js Datei wird immer noch darin angezeigt. Wie kann ich eine Datei gezielt ausschließen mit .gitignore?

  • Bedeutet das, dass die Datei bereits vorher zum Repository hinzugefügt wurde? .gitignore ignoriert nur hinzuzufügende Inhalte.

    – Willem Van Onsem

    14. Mai 15 um 1:33 Uhr

  • @CommuSoft Ja, es wurde schon einmal zum Repository hinzugefügt. Also, wie kann ich es jetzt ausschließen? Ist meine Art zu tun .gitignore Korrekt?

    – Benutzer1995781

    14. Mai 15 um 1:35 Uhr

gitIgnorieren Sie bestimmte Dateien nicht
Willem van Onsem

Im Gegensatz zu dem, was der Name „Ignorieren“ vermuten lässt. .gitignore wird nur konsultiert, wenn Sie git add Dateien: Mit anderen Worten, eine Datei, die bereits zum (Index des) Repository hinzugefügt wurde, wird nicht aufgrund von ausgeschlossen .gitignore.

Zuerst ändern Sie besser die .gitignore sodass die Datei nicht mehr hinzugefügt wird. Fügen Sie die folgende Zeile hinzu .gitignore Datei:

public/app/template.js

Als nächstes müssen Sie die Datei aus dem Repository ausschließen. Wahrscheinlich du Ich möchte die Datei nicht entfernen aus Ihrem Dateisystem können Sie dies tun mit:

git rm --cached public/app/template.js

Der --cached -Flag stellt sicher, dass die Datei nicht aus Ihrem Dateisystem entfernt wird. (Wenn nicht wichtig, können Sie verwenden git rm public/app/template.js, aber dadurch wird die Datei entfernt).

Hintergrund

Der Grund .gitignore nicht proaktiv verwendet wird, weil Sie das manchmal überschreiben möchten .gitignore. Sagen Sie zum Beispiel, Sie möchten nicht nachverfolgen *.log Dateien können Sie angeben *.log in dem .gitignore. Aber wenn es einen bestimmten gibt, den Sie verfolgen möchten, können Sie ihn hinzufügen git add -f some.log. Der -f Flaggentruppen git um die Datei hinzuzufügen.

  • ein Lebensretter, hatte meine Zeugnisse der Öffentlichkeit zugänglich gemacht

    – mlSchüler33

    13. September 2020 um 3:54 Uhr

  • Mir war nicht bewusst, dass ich die hinzugefügte Datei zuerst entfernen und dann über gitignore ignorieren muss. 🙂

    – Rahel Khan

    29. Dezember 2020 um 6:36 Uhr

  • Gab Ihnen eine positive Stimme für die git add -fdas war genau das, was ich brauchte!

    – David Bry

    5. Februar 21 um 21:34 Uhr

  • @mLstudent33 Ich bin kein Git-Experte, wollte aber nur Bedenken äußern, dass Ihre Anmeldeinformationen möglicherweise noch in früheren Versionen in diesem Repo vorhanden sind. Ich kann mich irren oder Sie haben bereits etwas dagegen unternommen – ich versuche nur zu helfen, mit dem bisschen, was ich kann! 🙂

    – DraxDomax

    28. Juni 21 um 10:56 Uhr

gitIgnorieren Sie bestimmte Dateien nicht
BTownTKD

Sobald eine Datei einmal zum Git-Repository „hinzugefügt“ wurde, wird sie weiterhin verfolgt, unabhängig davon, ob sie in der .gitignore-Datei aufgeführt ist oder nicht.

Ich vermute, Sie haben die Datei template.js zuvor hinzugefügt. In diesem Fall werden weiterhin Änderungen nachverfolgt, bis Sie sie aus dem Repository entfernen. Sobald die Datei aus dem Repository entfernt wurde, wird sie ordnungsgemäß über die .gitignore-Datei ignoriert.

Der Weg, eine Datei aus einem Git-Repository (Befehlszeile) zu entfernen, ohne sie zu löschen, ist

git rm --cached FILENAME

Sobald Sie das tun und versuchen, mit der Datei in Ihrem Gitignore zu committen, wird es nicht funktionieren.

Beachten Sie, dass, wenn Sie speziell eine Datei hinzufügen, die Sie in Ihrem Gitignore haben, Ihr manuelles Hinzufügen der Datei das Gitignore überschreibt.

  • Danke Schatz, “git rm –cached FILENAME” hat wunderbar funktioniert 🙂

    – Kamlesh

    26. Februar 20 um 16:37 Uhr

1643867286 678 gitIgnorieren Sie bestimmte Dateien nicht
Roß

Wenn Sie bereits eine Datei verfolgen (git add darauf und git commit), .gitignore wird nicht helfen.

Ich glaube, was Sie wollen, ist, die Verfolgung einer Datei zu stoppen, und dann benutzen .gitignore um es auszuschließen. Um die Verfolgung einer Datei zu beenden, aber die Datei zu behalten, verwenden Sie:

git rm --cached <file>

  • nicht dv, aber ich denke, Sie sollten Ihre Worte vielleicht besser wählen. Bewahren Sie es im Repository auf ist ein bisschen im Gegensatz zu behalte es in deinem lokalen Dateisystem. Ein Repository nicht Karte auf einem Dateisystem…

    – Willem Van Onsem

    14. Mai 15 um 2:10 Uhr

  • @CommuSoft Zu einiger Zufriedenheit behoben, war ich nicht zu vorsichtig, weil andere Leute es besser beantwortet haben. Danke für den Vorschlag.

    – Roß

    14. Mai 15 um 3:17 Uhr


1643867287 784 gitIgnorieren Sie bestimmte Dateien nicht
Taddy Reifen

In diesem Fall können Sie das Tracking beenden templates.js mit

git rm --cached public/app/templates.js

Wie andere erklärt haben, .gitignore ignoriert nur hinzuzufügende Inhalte. Zum Beispiel, wenn Sie häufig verwenden git add . und haben templates.js in deinem .gitignoredann wird git es nicht hinzufügen.

.

751300cookie-check.gitIgnorieren Sie bestimmte Dateien nicht

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy