Cherry elige la confirmación específica y recupera solo los files eliminados.

Tengo una sucursal (sucursal A) que agregó unos 300 files, luego fusioné esto en maestro. La fusión rompió el maestro, así que eliminé los 300 files y me comprometí a eliminar estos files. Luego procedí a volver a la twig A y corregir la anulación, pero la fusión de esta twig no traerá estos files ya que no se han actualizado desde la confirmación que los eliminó. ¿Hay alguna forma de seleccionar solo los files eliminados de una confirmación para que pueda recuperarlos?

En su twig principal, obtenga una list de files eliminados desde la confirmación anterior.

git diff --name-status HEAD~1 | grep '^D' | cut -c 3- > /tmp/FileList.txt 

A continuación, recorra la list de files eliminados y use git show para extraer los datos del file de la otra twig.

 for line in $(cat /tmp/FileList.txt); do git show OtherBranchName:$line > $line; done 

Desafortunadamente, esto no maneja los nombres de files con espacios, pero podemos usar esta respuesta para solucionar ese problema.

 IFS=$'\n' for line in $(cat /tmp/FileList.txt); do git show OtherBranchName:$line > $line; done