Ich habe eine Datei foo.txt
im Zweig A
und möchte foo.txt
vom Zweig B
in den Index auschecken. In der Befehlszeile würde ich Folgendes tun:
$ git checkout B -- foo.txt
Ich möchte in der Lage sein, dies in magit zu tun, indem ich mich anmelde, den Commit finde, an dem ich interessiert bin (zB l o B
), foo.txt
einen Befehl finde und ihn ausführe, aber ich kann nicht herausfinden, wie ich das mache.
Antworten:
Ab Magit 2.11.0 ist dies direkt über den Reset-Dispatcher möglich (
X f
und Sie können die Revision und die Datei angeben):Dies kann programmgesteuert in magit erfolgen, wobei
magit-file-checkout
eine Versionsspezifikation und der Dateiname akzeptiert werden (dank @Emoses 'Feature-Anfrage und der Implementierung von @Kyle Meyer). Bisher wurde die Funktion benanntmagit-checkout-file
(von v2.3.0 - v2.9.0).quelle
magit-checkout-file
ist jetzt überholt. Verwenden Siemagit-file-checkout
stattdessen.Mir ist kein integrierter Weg bekannt, dies zu tun.
Angenommen, Sie befinden sich in Zweig A, besteht ein anderer Ansatz darin, Zweig B (
d r ..B
) zu unterscheiden und dann den Punkt auf die Datei zu verschieben, an der Sie interessiert sind. Durch Drücken vona
werden diese Änderungen auf die Arbeitsstruktur (und nicht auf den Index) angewendet.Ich habe in meiner Konfiguration einen Befehl zum Zurücksetzen oder Auschecken einer Datei aus einer Revision, aber im aktuellen Zustand entspricht sie nicht genau Ihren Anforderungen, da sie in Magit Revision keinen guten Revisionsstandard bietet Modus.
quelle