Bagaimana saya bisa melakukan beberapa perubahan pada file, tetapi tidak yang lain, di VSCode?

139

VSCode memiliki integrasi git yang sangat baik tetapi saya tidak dapat menemukan cara untuk melakukan sebagian komitmen. Pada dasarnya, saya ingin dapat memilih perubahan spesifik pada file saya dan menampilkannya tanpa menentukan seluruh file. Fungsionalitas ini didukung oleh git CLI, aplikasi asli Github, dan plugin Atom.

Sebagian besar memastikan saya tidak hanya melewatkan sesuatu sebelum membuka tiket untuk itu.

Rayne
sumber

Jawaban:

212
  • Buka tampilan Kontrol Sumber, lalu klik file yang diubah untuk membuka perbandingan.

  • Pilih garis yang ingin Anda panggung.

  • Klik '...' lalu Stage Selected Ranges.

masukkan deskripsi gambar di sini

Benjamin Pasero
sumber
45
Kalau-kalau ada orang yang bingung seperti saya: tangkapan layar ini merujuk ···pada sudut kanan atas editor, bukan ···di bagian atas panel git di sebelah kiri.
waldyrious
4
Jika ini mengembalikan Anda kesalahan " Git: Nilai ilegal untukline ", ini telah dilaporkan beberapa kali di GitHub, tetapi masih belum diperbaiki. Dalam hal ini, cukup aktifkan "Tampilan sebaris" dan itu akan berhasil. Sumber
Marc.2377
2
Seperti yang disebutkan oleh @ Dimitris, perintah ini juga ada di Palet Perintah, jadi Anda tidak perlu berada di tampilan Kontrol Sumber.
eatcrayons
2
Berhati-hatilah, ini membuat seluruh baris, jika Anda ingin membuat bagian dari sebuah baris, saya kira itu kembali ke get add -idan penyuntingan interaktif ...
Zarepheth
97

⚡ Ringkas semua yang ada di pos ini dengan gif.

  1. Pastikan Anda berada di tampilan kontrol sumber untuk menggunakan fitur ini
  2. Pilih rentang kode
  3. Buka ···di sudut kanan atas editor (bukan ···di bagian atas panel git di sebelah kiri)
  4. Anda juga dapat menekan COMMAND (⌘)+ K+ COMMAND (⌘)+ Suntuk membuka pintasan keyboard dan mencari rangelalu mengatur pintasan keyboard untuk tindakan ini.

VSCode Range Pilih Commit

Perdamaian! ✌️

Ahmad Awais
sumber
sulit untuk memilih garis yang dihapus
duXing
45

Pembaruan: Oktober 2017: Dalam VSCode terbaru per Oktober 2017 (versi 1.18) Anda sebenarnya dapat membuat garis-garis spesifik dengan sangat mudah seperti yang Anda lakukan dengan git CLI git add -p. Anda hanya perlu mengklik pada baris yang diedit dari samping seperti, menonton diff dan menerapkannya atau tidak.

Lihat perubahan yang tertunda dan lakukan sebagian komitmen di editor

Konstantinos Leimonis
sumber
5
Ada dua hal yang hilang meskipun ... Anda tidak dapat membagi bakhil dan Anda tidak dapat secara manual mengedit bakhil ... :(
Robert Koritnik
12

Opsi ini telah dipindahkan ke palet:

bergeser + perintah + P dan ketik "rentang tahapan yang dipilih"

Dimitris
sumber
sepertinya tidak berfungsi saat dalam mode vim.
baxx
@ baxx Mengapa Anda mengharapkan itu?
tejasvi88
@ tejasvi88 kenapa tidak?
baxx