2015-03-15 23 views
6

Con git bisect possiamo ingrandire quando un problema potrebbe essere stato introdotto tra commit.Un trucco simile per git bisect ENTEN un commit

Mi chiedevo se c'è anche un modo per far passare git (combinazioni) di file all'interno di un commit singolo, in modo da poter capire quale file/parte sta causando il problema?

+3

No, ma questo è un buon argomento per effettuare piccoli commit frequenti piuttosto che singoli commit molto grandi. – larsks

+0

Questa è una domanda ipotetica o esiste un problema reale che stai cercando di risolvere? Potrebbe esserci un altro modo per affrontare il problema. – R0MANARMY

+0

@larsks Sapevo che il commento sarebbe arrivato :-) (ed è corretto). – PascalVKooten

risposta

1

Il recommended way a split a commit è con git rebase -i $commit_you_want_to_split^. Abbatti il ​​commit con l'azione rebase edit poi un reset HEAD^ e un gruppo di git add s per inserire i tuoi nuovi commit più piccoli nell'indice. Certo, non è automatico, ma potresti essere in grado di copiarlo con un sacco di sed o awk o python. Vedi i link SO sopra per maggiori dettagli.

Una volta abbattuto il commit, il tuo git bisect sarà ora molto più preciso.

Qualcuno ha automatizzato questo processo?