2012-05-24 6 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. 

Semplicemente non capisco cosa voglia dire make them ' ' lines. Come applicare solo + bbb ma non - aaa?git hunk edit mode - come rimuovere una linea '-'?

risposta

53

make them ' ' lines significa che è necessario sostituire - davanti alla linea con uno (spazio).

+2

messaggio molto didattico ... – jacktrades

+1

Per aggiungere a questo, se modificate con 'vim' e si desidera massa sostituire su più righe, ad esempio, , 7-200, il seguente comando dovrebbe fare: ': 7.200s/^ -//'. Questa espressione regolare cerca un singolo '-' all'inizio di ogni riga nell'intervallo specificato e la sostituisce con un singolo spazio. – Adama

+0

Fantastico, non ho idea di cosa fare fino a quando non ho visto questa risposta. Grazie –

9

Un pezzo così:

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

si trasformerà in contenuti simili:

bbb 
ccc 

Per mantenere una linea contrassegnato per la cancellazione (prefisso '-'), trasformarlo in una linea con la stesso prefisso della riga unchanged sopra (quindi rimarrà la stessa):

+ bbb 
    aaa 
    ccc 

Quando si applica il pezzo, il contenuto sarà simile a questo:

bbb 
aaa 
ccc 
+5

"* Per mantenere una linea contrassegnata per la cancellazione (preceduta da '-'), trasformala in una linea senza alcun prefisso (quindi rimarrà la stessa): *". In realtà questo non è esatto, se li fai a righe '' ', ottieni una 'patch non si applica'; tu ** hai bisogno ** dello spazio '''' –

Problemi correlati