Es gibt eine Frage zu SO über das Teilen von Hunks mit Magit, und die beiden angegebenen Lösungen bestehen darin, entweder die Region zu inszenieren (eine Region markieren, Stufe treffen) oder alle Hunks mit +& zu verkleinern / zu vergrößern -. Das ist nicht was ich will.
Im Statuspuffer von magit möchte ich ein Stück am Punkt oder zumindest an den Linien um den Punkt in zwei Stücke aufteilen.
Drehen Sie dies (entschuldigen Sie meine schlechte Diff-Formatierung)
@@ blah blah blah
- foo
+ bar
+ baz
+
In
@@ blah blah
- foo
+ bar
@ blah blah
+ baz
Wenn der Punkt auf der Latte liegt.
Motivationen:
bazAls Debug-Anweisung würde ich es gerne aus dem Commit vonfoo&barstreichen, ohne es loszuwerden.barundbaznur teilweise verwandt sein, was bedeutet, dass ihre Änderungen nicht im selben Commit sein sollten.barist groß undbazklein, wodurch es viel einfacher ist, das Stück zu teilen, als es auszuwählenbarÄhnlich wie beim letzten Punkt enthält ein Festschreiben mit 20 Zeilen eine einzelne Zeile in der Mitte, die nicht in Szene gesetzt werden soll. Es wäre einfacher, die oberen und unteren zwei Hunks zu teilen und zu inszenieren, wenn man die mittlere ignoriert, als die Region zu verwenden.
Das Obige kann manchmal auftreten, wenn die Diff-Darstellung das Vorher und Nachher von etwas trennt, das geändert wurde, und etwas nicht hilfreiches in der Mitte hat. z.B
@@ line
- old_foo
+ random stuff
+ new foo
diff-split-hunkhat, der genau das tut. IOW Ihre Anfrage diff-split-hunkbezieht sich auf eine Art (oder eine äquivalente) Verwendung aus dem Magit-Status-Puffer.