Warum funktioniert meine aktualisierte .gitignore-Datei nicht für Dateien, die nachverfolgt werden?
Lesezeit: 3 Minuten
Schienbein
Ich habe die folgende .gitignore-Datei
# file named .gitignore
system/application/config/database.php
system/application/config/config.php
system/logs
modules/recaptcha/config/*
Wenn ich jedoch Änderungen in config und recapcha.php hinzufüge, warnt mich git status wie folgt. Wenn ich Änderungen an database.php hinzufüge. es zeigt es nicht im Status
shin@shin-Latitude-E5420:/var/www/myapp$ git status
# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: modules/recaptcha/config/recaptcha.php
# modified: system/application/config/config.php
#
no changes added to commit (use "git add" and/or "git commit -a")
Wie kann ich das beheben?
Ich verwende Git-Version 1.7.5.1 auf Ubuntu 11.04
Mögliches Duplikat von Git: Entfernen Sie eine Datei aus dem Repository, ohne sie aus dem lokalen Dateisystem zu löschen
– Kaskabel
1. Februar 2012 um 20:31 Uhr
DIP Schalter
Die Dateien sind bereits in Ihrem lokalen Commit-Baum gespeichert. Sie müssen sie zuerst aus dem Repository entfernen. Dies kann erfolgen über:
Danach müssen Sie noch einen Commit machen und Sie können loslegen.
Vielen Dank. git rm hat eine Datei entfernt. Aber das Hinzufügen von –cached löste das Problem. Was muss ich tun, wenn ich es wieder hinzufügen möchte? Muss ich nur aus der .gitignore-Datei herausnehmen?
– Schienbein
17. Mai 2011 um 12:53 Uhr
Großartig. Danke dir
– manuelbcd
25. Oktober 2017 um 10:23 Uhr
Gehen Sie wie folgt vor, um die auszulösen ignorieren
Schritt 1:
Committen Sie alle Ihre ausstehenden Änderungen im Repo, die Sie beheben möchten, und übertragen Sie diese.
Schritt 2:
Jetzt müssen Sie alles aus dem Git-Index entfernen, um Ihr Git-Repository zu aktualisieren. Das ist sicher. Verwenden Sie diesen Befehl:
git rm -r --cached .
Schritt 3:
Jetzt müssen Sie alles wieder in das Repo einfügen, was mit diesem Befehl möglich ist:
git add .
Schritt 4:
Schließlich müssen Sie diese Änderungen mit diesem Befehl festschreiben:
git commit -m "Gitignore issue fixed"
DANKE SCHÖN! einfachste und schnellste Weg.
– Wanderung Nalbandyan
30. Mai 2019 um 7:34 Uhr
Das hat perfekt funktioniert! Es war so einfach. Vielen Dank @NandaGopal
– Adam
2. März 2020 um 23:20 Uhr
Das ist genau das, was ich brauchte und mir den Tag gerettet hat. Vielen Dank
– willkürlich
3. Februar 2021 um 10:20 Uhr
Wenn sich Ihre Datei bereits in Git befindet, bevor Sie das Verzeichnis zu .git hinzufügen, wird Git sie weiterhin verfolgen. Wenn Sie es nicht möchten, führen Sie zuerst ein “git rm” aus, um es zu entfernen.
Gewohnheit git rm (ohne --cached) auch die Datei entfernen? Oder belässt es es, weil es in der aufgeführt ist .gitignore Datei?
– DIP Schalter
17. Mai 2011 um 12:26 Uhr
Sie sollten es wahrscheinlich vorher irgendwo sichern. Nachdem Sie rm und commit ausgeführt haben, kopieren Sie es zurück. Aber ich wusste nichts über die Option –cached, ich werde sie mir ansehen.
– Eric Hogue
17. Mai 2011 um 12:40 Uhr
Ich vermute, dass Sie .gitignore nicht im Stammverzeichnis Ihres Arbeitsbaums finden.
Wenn Sie eine .gitignore-Datei im selben Verzeichnis wie system/application/config/config.php ablegen, können Sie sie einfach verwenden
Mögliches Duplikat von Git: Entfernen Sie eine Datei aus dem Repository, ohne sie aus dem lokalen Dateisystem zu löschen
– Kaskabel
1. Februar 2012 um 20:31 Uhr