Domanda

Mi chiedo se c'è un modo per specifica pezzo rapidamente rovescio di un commit.

I grado di generare un diff tra due commit o HEAD per vedere la differenza.

Come faccio a invertire solo uno di quei grossi pezzi (o, meglio ancora, una serie di grossi pezzi specifici)?

È stato utile?

Soluzione

git checkout -p $REF -- path/to/file

Dove $REF è un nome di rif o commettono ID che specifica il commit si vuole prendere lo stato file. Ad esempio, per selettivamente annullare le modifiche compiuto nell'ultimo commit, uso HEAD^.

Altri suggerimenti

git difftool $REF -- /path/to/file

dove $REF è un nome di rif o commettono ID che specifica il commit si vuole prendere lo stato file. Ad esempio, per selettivamente annullare le modifiche compiuto nell'ultimo commit, uso HEAD ^.

Questa domanda è stata già risposto @cdhowie, ma io lo trovo un po 'più bello di utilizzare un difftool interattivo come meld per selettivamente ripristinare i vecchi fusti / righe di codice, soprattutto se v'è una nuova introduzione, difficile da trovare bug nel codice.

Per recuperare un file cancellato da un precedente commit ho usato la risposta qui:

trovare e ripristinare un file eliminato in un repository Git

git checkout <deleting_commit>^ -- <file_path>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top