Wenn ich a mache git commit -a
, sehe ich Folgendes:
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch better_tag_show
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: ../assets/stylesheets/application.css
# modified: ../views/pages/home.html.erb
# modified: ../views/tags/show.html.erb
# modified: ../../db/seeds.rb
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# ../assets/stylesheets/
# ../views/pages/
Was bedeuten diese nicht verfolgten Dateien? Alle Änderungen wurden tatsächlich verfolgt. Ich verstehe nicht, warum Git mich hier vor nicht verfolgten Dateien warnt.
EDIT :
Ok, ich sehe viele verwirrte Antworten. Dies ist, was passiert, nachdem ich git commit -a
dies.
# On branch master
nothing to commit (working directory clean)
Wie Sie sehen können, gibt es NICHTS anderes als diese vier Dateien, auf die Änderungen angewendet wurden.
Meine Frage sollte wie folgt umformuliert werden: Warum warnt mich git vor nicht verfolgten Dateien, wenn alle Änderungen in diesem Commit nachverfolgt wurden?
Mit anderen Worten, ist die nicht verfolgte Warnung in der Git-Commit-Nachricht nicht erforderlich ?
(use "git add <file>..." to include in what will be committed)
add
bearbeitet wurden. Aus den Dokumenten für-a
: Weisen Sie den Befehl an, Dateien, die geändert und gelöscht wurden, automatisch bereitzustellen, aber neue Dateien, von denen Sie git nichts erzählt haben, sind nicht betroffen .Antworten:
Versuchen Sie für andere, die das gleiche Problem haben, zu laufen
git add .
Dadurch werden alle Dateien des aktuellen Verzeichnisses hinzugefügt, die verfolgt werden sollen (einschließlich nicht verfolgter Dateien), und dann verwendetgit commit -a
um alle verfolgten Dateien festzuschreiben.Wie von @Pacerier vorgeschlagen, ist ein Liner, der dasselbe tut, der
git add -A
quelle
git commit -a
schreibt alle nachverfolgten Dateien fest, nicht nachverfolgte Dateien.git add .
verfolgt nicht verfolgte Dateien im aktuellen Verzeichnis.git add -a
verfolgt alle nicht verfolgten Dateien.git add -A
nichtgit commit -A
. Soweit ich das beurteilen kann, gibt es keinen Schalter, an den Sie übergeben könnengit commit
, der nicht verfolgte Dateien enthält.git commit -am "msg"
ist nicht dasselbe wiegit add file
undgit commit -m "msg"
Wenn Sie einige Dateien haben, die nie zum Git-Tracking hinzugefügt wurden, müssen Sie dies noch tun
git add file
Quelle: "git commit -a" und "git add"
quelle
git commit -a
ist nicht gleichgit add .
+git commit
. Dergit add
Schritt fügt nur die Dateien hinzu , die in Ihremgit status
Verzeichnis als geändert aufgeführt sind , nicht alles im aktuellen Verzeichnis.Sie sollten in die Befehlszeile eingeben
Dadurch werden alle nicht verfolgten Dateien festgeschrieben
Bearbeiten:
Nachdem Sie Ihre Dateien bereitgestellt haben, können sie festgeschrieben werden, sodass Ihr nächster Befehl lauten sollte
quelle
Zuerst müssen Sie alle nicht verfolgten Dateien hinzufügen. Verwenden Sie diese Befehlszeile:
git add *
Dann schreiben Sie über diese Befehlszeile fest:
git commit -a
quelle
Wenn Sie Probleme mit nicht verfolgten Dateien haben, hilft Ihnen dieses dreizeilige Skript.
Dann einfach
git push
quelle
Wie der Name schon sagt, sind "nicht verfolgte Dateien" die Dateien, die nicht von git verfolgt werden. Sie befinden sich nicht in Ihrem Bereitstellungsbereich und waren nicht Teil früherer Commits. Wenn Sie möchten, dass sie versioniert werden (oder von git verwaltet werden), können Sie dies tun, indem Sie 'git' mit 'git add' mitteilen. Lesen Sie dieses Kapitel Aufzeichnen von Änderungen am Repository im Progit- Buch, das eine schöne visuelle Darstellung verwendet, um eine gute Erklärung für das Aufzeichnen von Änderungen am Git-Repo sowie die Begriffe "verfolgt" und "nicht verfolgt" zu erhalten.
quelle
Stellen Sie sicher, dass Sie sich in Ihrem lokalen Git im richtigen Verzeichnis (Repository-Hauptordner) befinden, damit es die Konfiguration des Git-Ordners finden kann, bevor Sie Dateien festschreiben oder hinzufügen.
quelle
Dadurch wird die nicht verfolgte Datei gelöst. Fügen Sie dank @travis delly die gesamte Datei im Verzeichnis hinzu
quelle