Ich dachte, wenn Sie die Dateien verfolgen möchten, sollten Sie git add [files you want to track]
Ich weiß nicht, warum ich die Nachrichten bekommen habe Changes not staged for commit
.
Wenn diese Dateien nicht aufgeführt wurden, sollten nicht git
zeigt mir diese Dateien waren Untracked
ähnlich
Ich habe lediglich eine neue Funktion aus der develop
Filiale erstellt und in der feature/change_excel_format
Filiale gearbeitet
Ich dachte, diese Dateien sollten im staged
Status sein,
Aber git status
hat es mir gesagtChanges not staged for commit
Um es kurz zu machen, ich weiß nur, dass es 3 Stufen in Git untracked
gibt staged
. committed
Kann mir jemand sagen, wofür die Stufe war?Changes not staged for commit
Also, wenn ich die Datei geändert habe a
(bereits im Repo)
und tippe git st
, der Git wird es mir sagenChanges not staged for commit
Wenn ich git a
dann wird die Datei a
in seinstaged status
Wenn ich das file a
jetzt geändert habe , gibt es zwei Status von file a
in git
, richtig?
Also muss ich mich entscheiden, ob das staged a
Commit oder das not stage a
Inszenierte gemacht werden soll, und dann wird das vorherige Inszeniert file a
verworfen?
Antworten:
Wenn Sie eine Datei ändern, die sich bereits im Repository befindet, müssen Sie
git add
sie erneut erstellen, wenn Sie möchten, dass sie bereitgestellt wird.Auf diese Weise können Sie nur einen Teil der Änderungen festschreiben, die Sie seit dem letzten Festschreiben vorgenommen haben. Angenommen, Sie haben Datei
a
, Dateib
und Dateic
. Sie ändern Dateia
und Datei,b
aber die Änderungen sind sehr unterschiedlich und Sie möchten nicht, dass sich alle in einem einzigen Commit befinden. Sie geben ausAls Randnotiz, wenn Sie alles festschreiben möchten, können Sie einfach eingeben
Ich hoffe es hilft.
quelle
git commit THEM
direkt ohne hinzufügen, oder?git clean -fd
und bekomme es immer noch. Ich möchte alle Änderungen loswerden. Was soll ich sonst noch tun?git commit -a
legt nicht alles fest, nur die aktualisierten Dateien, nicht die neuen ...Sie müssen git add verwenden, um sie zu inszenieren, sonst werden sie nicht festgeschrieben. Nehmen wir an, es informiert git darüber, welche Änderungen Sie übernehmen möchten.
git add -u :/
Fügt alle geänderten Dateiänderungen zur Bühnegit add * :/
hinzu. Fügt der Bühne modifizierte und alle neuen Dateien (die nicht gitignore'ed sind) hinzuquelle
Es ist eine andere Art, wie Git dir sagt:
Änderungen an Dateien werden nicht bereitgestellt, wenn Sie sie nicht explizit
git add
ausführen (und dies ist sinnvoll).Wenn Sie dies tun
git commit
, werden diese Änderungen nicht hinzugefügt, da sie nicht bereitgestellt werden. Wenn Sie sie festlegen möchten, müssen Sie sie zuerst inszenieren (dhgit add
).quelle
add .
beim Einrichten der Neuveröffentlichung angewiesen habe, eine Datei zu verfolgen, und festgestellt wird, dass ich Änderungen daran vorgenommen habe, warum muss ich bei jedem Festschreiben explizit Dateien hinzufügen? Nur um eine Änderung an einer Datei zu machen, muss ichadd
,commit
undpush
. Die Abgrenzung zwischencommit
und Push macht für mich Sinn, die Abgrenzung zwischenadd
undcommit
scheint lächerlich überflüssig.Folgen Sie den unteren Schritten:
1-Git-Stash
2-Git-Add.
3- git commit -m "Ihre Commit-Nachricht"
quelle
Angenommen, Sie haben eine neue Datei geändert. (navbar.component.html zum Beispiel)
Lauf:
Wenn Sie diese Änderungen für diese Datei hochladen möchten, müssen Sie Folgendes ausführen:
Und dann:
Und dann:
-------------------------------------------------- -------------
Oder wenn Sie alle Ihre Änderungen (mehrere / alle Dateien) hochladen möchten:
Und ihnen wird Folgendes angezeigt: "Bitte geben Sie die Festschreibungsnachricht für Ihre Änderungen ein."
Und dann:
Und Viola!
quelle
git commit -a
Lädt nicht alle Änderungen hoch , es enthält nicht die neuen Dateien. Die Aktualisierungen werden nur für vorhandene Dateien festgeschrieben.Versuchen Sie, int git bash zu folgen
1.
git add -u :/
2.
git commit -m "your commit message"
git push -u origin master
Hinweis: Wenn Sie Ihr Repo nicht initialisiert haben.
Zuerst
und befolgen Sie die oben genannten Schritte der Reihe nach. Das hat bei mir funktioniert
quelle
Es bedeutet, dass sie nicht hinzugefügt werden, um festgeschrieben zu werden. Sie müssen git add scripts / excel_parser.py ausführen und die Likes, um sie zu inszenieren. Sobald sie beim Git-Status bereitgestellt werden, werden sie bereitgestellt und git commit schreibt sie fest
von Ihnen können git commit -a -m "all checkin" geben, das automatisch alle Dateien im Baum bereitstellt und festschreibt
quelle
Möglicherweise wird dieser Fehler angezeigt, wenn Sie Ihrem Code eine neue Datei hinzugefügt haben und nun versuchen, den Code festzuschreiben, ohne ihn bereitzustellen (hinzuzufügen).
Um dies zu überwinden, können Sie die Datei zuerst mit git add (
git add your_file_name.py
) hinzufügen und dann die Änderungen (git commit -m "Rename Files" -m "Sample script to rename files as you like"
) festschreiben.quelle
Ich habe alle obigen Antworten gelesen und im Terminal die folgenden Schritte versucht, die gut zum Aktualisieren neuer und zum Ändern von Dateien auf dem Master funktionieren.
1) git hinzufügen. 2) git commit -m "Ihre Nachricht" 3) git push origin master
Ich hoffe das hilft dir.
quelle
Sie befinden sich möglicherweise im falschen Verzeichnis, wenn Sie git add ausführen. :-)
quelle
Entfernen
dir/.../.git
funktioniert bei mir.
quelle