
Quero descobrir quando foi a última vez que uma propriedade CSS específica foi removida da fonte em meu branch atual (mestre). Escrevi:
git log -Smystring --source
Isso me deu um hash. Ativei o gitk e colei o hash e ele me deu uma lista enorme de arquivos, então suspeito que fossem apenas finais de linha. No entanto, procurei a string no gitk e não consegui encontrar a string. Talvez isso signifique que ele foi excluído, mas o gitk não deveria ser exibido - ...mystring...
de qualquer maneira?
Como encontro a linha/arquivo em que minha string está? Vejo os últimos hashes usando o comando acima, mas não tenho ideia de como identificá-los.
Responder1
Algo como
git bisect start
git bisect bad AFTER
git bisect good BEFORE
git bisect run grep -v LINE FILE
onde BEFORE e AFTER são commits que contêm e não (respectivamente) a LINE em questão. Isto deve encontrar o último commit entre BEFORE e AFTER em que FILE contém LINE.
Depois de saber qual commit procurar, você pode usar
git grep -n LINE COMMIT:FILE
para localizar a LINHA e seu número de linha na versão apropriada do ARQUIVO.