
Emerson Cedeño
PreguntaA las finales estoy buscando realizar algo como esto (ver comando abajo), pero no obtengo los resultados esperados, más bien, obtengo 0 resultados o en el peor de los escenarios un error, ciertamente algo estoy haciendo mal:
git log --oneline --since=2018-09-01 | grep -Eo "^(\w{8})" | git diff-tree --no-commit-id --name-only -r $1 | grep -En "la-cadena-en-cuestion"
Lo que busco es lo siguiente:
- extraer los commit-ids de las confirmaciones realizadas desde principio del mes;
- para luego buscar cuáles fueron los archivos trabajados en estas confirmaciones;
- y buscar dentro de estos archivos “la-cadena-en-cuestion”.
¿es posible lograr esto en una sola línea de comando pipeando greps y gits?

Hola he hecho pruebas con varios comandos, algo que me pueda dar cuenta es que diff-tree solo trabaja con 2 commits, si se pone un tercer commit ya no muestra resultados, creo que ese es el problema por el cual no se puede hacer lo que necesitas. Se tendría que hacer un script en bash que recorra la salida del grep y que haga el diff-tree por cada linea en el grep.