Was ist das Magit-Äquivalent von 'git add'?

37

Womit kann Magit git add [--intent-to-add] <filename>eine neu erstellte Datei in Git einchecken?

feoh
quelle
Irgendwann wird vielleicht jemand einen Spickzettel zusammenstellen, der die Befehlszeilenoptionen (in alphabetischer Reihenfolge) in magische Magit Keboard-Verknüpfungen konvertiert. Es sollte (meiner Meinung nach) nicht notwendig sein, das Handbuch zu lesen - deshalb hat G * d einen Index erstellt -, dh nur das zu lesen, was für die jeweilige Aufgabe relevant ist.
Gesetzesliste
1
Es ordnet magit keine Befehlszeile zu, aber es gibt eine Refcard: magit.vc/manual/magit-refcard.pdf .
Tarsius
@tarsius: Es ist sinnvoll, einen Indexeintrag "git add" hinzuzufügen, der auf den Knoten "Staging and Unstaging" im Handbuch verweist.
Phils

Antworten:

45

Um eine Änderung sdurchzuführen, drücken Sie mit dem Punkt auf eine "stufenweise Änderung". Dies schließt Dateien ein, die unter "Nicht überwachte Dateien" und "Nicht bereitgestellte Änderungen" aufgeführt sind.

Sie können die Dateien unter "Nicht bereitgestellte Dateien" auch mit TAB(funktioniert auch in vielen anderen Abschnitten) erweitern, um die Hunks anzuzeigen. Sie können dann ein einzelnes Stück inszenieren, indem Sie erneut drücken, swährend sich der Punkt darin befindet.

Sie können sogar nur Teile eines Hunks in der Region inszenieren. Drücken Sie C-SPCdazu, um den Beginn der Region zu markieren, und nbewegen Sie sich dann einige Male zu der Stelle, an der die Region enden soll.

Um zu git add --intent-to-addverwenden C-u s.

Sie können Änderungen auch auf ähnliche Weise entfernen, verwerfen, rückgängig machen und anwenden. Dies wird im Handbuch genauer beschrieben. Siehe insbesondere Staging und Unstaging , Anwenden und Abschnitte . Die Bereitstellung wird auch in Erste Schritte behandelt .

Tarsius
quelle
4
swird eine Datei inszenieren. Aber wie kann ich einfach eine Datei hinzufügen, damit git anfängt, die Datei zu verfolgen, aber nicht alle Änderungen bereitstellt?
ChillarAnand
7
@ChillarAnand Das können Sie jetzt mit C-u s.
Tarsius
9

Beginnen Sie mit magit-status, gehen Sie dann zu dem Dateinamen unter der Überschrift "Untracked files" und drücken Sie, um ihn szu inszenieren.

rekado
quelle
6

Wenn Sie nach einer Möglichkeit suchen, eine Datei direkt aus dem Puffer hinzuzufügen / bereitzustellen, versuchen Sie es mit dem Befehl magit-stage-file. Wenn Sie das oft tun, können Sie es an einen Schlüssel binden.

Wie andere bereits ausgeführt haben, erfolgt das Bereitstellen / Hinzufügen von Dateien in der Regel über den magit-statusPuffer.

Glucas
quelle
magit-stage-file fragt, ob die Datei inszeniert werden soll.
Wird
So verhält es sich bei mir nicht. Außerdem aus dem Dokument: "Mit einem Präfix-Argument oder wenn keine Datei vorhanden ist, fragen Sie nach, ob die Datei bereitgestellt werden soll. Andernfalls stellen Sie die Datei an der gewünschten Stelle bereit, ohne eine Bestätigung zu benötigen."
Glucas
Ah, ich verstehe: Für eine neue Datei wird tatsächlich eine Eingabeaufforderung ausgegeben. Wenn die Datei bereits vorhanden ist (und Sie Änderungen bereitstellen), geschieht dies unbeaufsichtigt. Vielen Dank für den Hinweis.
Glucas