Wie kann ich einige Änderungen an einer Datei in VSCode festschreiben, andere jedoch nicht?


139

VSCode hat eine ausgezeichnete Git-Integration, aber ich kann keinen Weg finden, teilweise Commits durchzuführen. Grundsätzlich möchte ich in der Lage sein, bestimmte Änderungen in meinen Dateien auszuwählen und zu inszenieren, ohne die gesamte Datei bereitzustellen. Diese Funktionalität wird von der Git-CLI, nativen Github-Apps und Atom-Plugins unterstützt.

Meistens muss ich sicherstellen, dass mir nicht nur etwas fehlt, bevor ich ein Ticket dafür öffne.

Antworten:


212
  • Öffnen Sie die Ansicht Quellcodeverwaltung und klicken Sie auf eine geänderte Datei, um den Vergleich zu öffnen.

  • Wählen Sie die Linien aus, die Sie inszenieren möchten.

  • Klicken Sie dann auf "..." Stage Selected Ranges.

Geben Sie hier die Bildbeschreibung ein


45
Nur für den Fall, dass jemand anders verwirrt ist wie ich: Dieser Screenshot bezieht sich ···auf die obere rechte Ecke des Editors, nicht ···auf die obere Seite des Git-Panels links.
Waldyrious

4
Wenn dies den Fehler " Git: Illegal value forline " zurückgibt , wurde dies einige Male auf GitHub gemeldet, aber immer noch nicht behoben. In diesem Fall schalten Sie einfach "Inline-Ansicht" um und es wird funktionieren. Quelle
März 2377

2
Wie von @Dimitris erwähnt, befindet sich dieser Befehl auch in der Befehlspalette, sodass Sie sich nicht in der Quellcodeverwaltungsansicht befinden müssen.
Essstifte

2
Seien Sie sich bewusst, dass dies ganze Zeilen inszeniert. Wenn Sie Teile einer Linie inszenieren möchten, ist dies vermutlich wieder eine get add -iinteraktive Bearbeitung ...
Zarepheth

97

⚡ Fassen Sie alles in diesem Beitrag mit einem GIF zusammen.

  1. Stellen Sie sicher, dass Sie sich in der Quellcodeverwaltungsansicht befinden, um diese Funktion verwenden zu können
  2. Wählen Sie den Codebereich aus
  3. Öffnen Sie ···in der oberen rechten Ecke des Editors (nicht ···oben im Git-Bereich links).
  4. Sie können auch COMMAND (⌘)+ K+ COMMAND (⌘)+ drücken S, um Tastaturkürzel zu öffnen und nach rangeeiner Tastenkombination für diese Aktion zu suchen und diese dann festzulegen.

VSCode-Bereich Wählen Sie Commit

Frieden! ✌️


schwer zu löschende gelöschte Zeilen
duXing

45

Update: Oktober 2017: Im neuesten VSCode ab Oktober 2017 (Version 1.18) können Sie bestimmte Zeilen ganz einfach inszenieren, so wie Sie es mit der Git-CLI tun würden git add -p. Sie müssen nur auf die bearbeitete Linie von der Seite klicken, den Diff beobachten und anwenden oder nicht.

Zeigen Sie ausstehende Änderungen an und führen Sie teilweise Commits im Editor durch


5
Es fehlen jedoch zwei Dinge ... Sie können Hunks nicht teilen und Sie können Hunks nicht manuell bearbeiten ... :(
Robert Koritnik

12

Diese Option wurde in die Palette verschoben:

Umschalt + Befehl + P und geben Sie "Stufe ausgewählte Bereiche" ein.


scheint im vim-Modus nicht zu funktionieren.
Baxx

@baxx Warum würdest du das erwarten?
tejasvi88

@ tejasvi88 warum nicht?
Baxx
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.