¿Cómo puedo confirmar algunos cambios en un archivo, pero no otros, en VSCode?


139

VSCode tiene una excelente integración de git, pero no puedo encontrar una manera de realizar confirmaciones parciales. Básicamente, quiero poder seleccionar cambios específicos en mis archivos y organizarlos sin poner en escena todo el archivo. Esta funcionalidad es compatible con la CLI de git, las aplicaciones nativas de Github y los complementos Atom.

Principalmente asegurándome de que no me estoy perdiendo algo antes de abrir un boleto para ello.

Respuestas:


212
  • Abra la vista Control de fuente, luego haga clic en un archivo modificado para abrir la comparación.

  • Seleccione las líneas que desea poner en escena.

  • Haga clic en '...' entonces Stage Selected Ranges.

ingrese la descripción de la imagen aquí


45
En caso de que alguien más se confunda como yo: esta captura de pantalla se refiere a la ···esquina superior derecha del editor, no ···a la parte superior del panel git de la izquierda.
waldyrious

44
Si esto le devuelve un error " Git: valor ilegal paraline ", esto se ha informado un par de veces en GitHub, pero aún no se ha solucionado. En ese caso, simplemente active "Vista en línea" y funcionará. Fuente
Marc.2377

2
Como mencionó @Dimitris, este comando también está en la Paleta de comandos, por lo que no necesita estar en la vista de Control de código fuente.
eatcrayons

2
Tenga en cuenta que esto representa líneas enteras, si desea representar partes de una línea, supongo que es una get add -iedición interactiva ...
Zarepheth

97

⚡ Resumiendo todo en esta publicación con un gif.

  1. Asegúrese de estar en la vista de control de origen para usar esta función
  2. Seleccione el rango de código
  3. Abra ···en la esquina superior derecha del editor (no ···en la parte superior del panel git de la izquierda)
  4. También puede presionar COMMAND (⌘)+ K+ COMMAND (⌘)+ Spara abrir métodos abreviados de teclado y buscar rangey luego establecer un método abreviado de teclado para esta acción.

VSCode Range Select Commit

¡Paz! ✌️


difícil de seleccionar líneas eliminadas
duXing

45

Actualización: octubre de 2017: en el último VSCode a partir de octubre de 2017 (versión 1.18), en realidad puede organizar líneas específicas de manera muy sencilla, tal como lo haría con la CLI de git git add -p. Solo tiene que hacer clic en la línea editada desde un lado, mirar el diff y aplicarlo o no.

Ver los cambios pendientes y realizar confirmaciones parciales en el editor


55
Sin embargo, faltan dos cosas ... No puedes dividir trozos y no puedes editar trozos manualmente ... :(
Robert Koritnik

12

Esta opción se ha movido a la paleta:

shift + comando + P y escribe "rangos seleccionados de etapa"


no parece funcionar cuando está en modo vim.
baxx

@baxx ¿Por qué esperarías eso?
tejasvi88

@ tejasvi88 ¿por qué no?
baxx
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.