2012-05-24 18 views
34
+ bbb 
- aaa 

# --- 
# To remove '-' lines, make them ' ' lines (context). 
# To remove '+' lines, delete them. 
# Lines starting with # will be removed. 
# 
# If the patch applies cleanly, the edited hunk will immediately be 
# marked for staging. If it does not apply cleanly, you will be given 
# an opportunity to edit again. If all lines of the hunk are removed, 
# then the edit is aborted and the hunk is left unchanged. 

Simplemente no entiendo qué significa make them ' ' lines. ¿Cómo aplicar + bbb solamente pero no - aaa?git hunk edit mode - cómo eliminar una línea '-'?

Respuesta

53

make them ' ' lines significa que debe reemplazar el - en frente de la línea con un (espacio).

+2

mensaje muy didáctica ... – jacktrades

+1

Para añadir a esto, si va a editar con 'vim' y que desea reemplazar en masa a través de múltiples líneas, por ejemplo, , 7-200, el siguiente comando sería: ': 7,200s/^ -//'. Esta expresión busca un único '-' al comienzo de cada línea dentro del rango especificado y lo reemplaza con un solo espacio. – Adama

+0

Impresionante No tengo idea de qué hacer hasta que vea esta respuesta. Gracias –

9

Un trozo de esta manera:

+ bbb <-- line added 
- aaa <-- line deleted 
    ccc <-- line unchanged 

se convertirá en el contenido de la siguiente manera:

bbb 
ccc 

Para mantener una línea marcada para su eliminación (con el prefijo '-'), convertirlo en una línea con el mismo prefijo que la línea anterior unchanged (por lo que seguirá siendo el mismo):

+ bbb 
    aaa 
    ccc 

Cuando se aplica el trozo, el contenido se vería así:

bbb 
aaa 
ccc 
+5

"* Para mantener una línea marcada para borrado (con el prefijo '-'), conviértala en una línea sin ningún prefijo (para que no cambie): *". En realidad esto es inexacto, si los haces líneas '''', obtienes un 'parche no aplica'; usted ** necesita ** el espacio '''' –