use git para optimizar el flujo de trabajo diferente

git es rastrear qué file tiene cambios. Lo que quiero lograr es que quiero eliminar todos los otros files que no han sido modificados por mí. ¿Cómo es posible con git?

  1. Elimine todos los files en el repository excepto .git a través de rm . Si hay algún file o carpeta invisible en la raíz de git, elimínelos uno por uno. No use git rm aquí.

    rm -rf *

  2. Encuentre todos los files que ha cambiado y compruébelos desde el tree HEAD. Si una vez renombró un file de NameA a NameB, git checkout NameA devolverá el error, que podría ignorarse, ya que NameA ya no existe en el tree HEAD.

    git log –author = yourname –pretty = "revertir:% h" –name-only | grep -v -E "^ revertir: | ^ $" | orderar -u | mientras lees la línea; haz el pago "$ line"; hecho

  3. Etapa de los cambios y hacer una confirmación.

    git add -A; git commit -m 'eliminar files no modificados por mí'

Podrías comenzar con algo como esto git blame --porcelain <file> | sed -n 's/^author //p' | sort | uniq -c git blame --porcelain <file> | sed -n 's/^author //p' | sort | uniq -c git blame --porcelain <file> | sed -n 's/^author //p' | sort | uniq -c que muestra quién ha tocado la versión actual del file (tenga en count que si alguien tocó originalmente una versión anterior del file y luego alguien más tocó esas mismas líneas, entonces esto no detectará el toque original er ( de ahí mi pregunta a su pregunta original anterior)). Pero suponiendo que eso es lo que desea, puede eliminar los files que tienen un nombre que no sea el suyo en el resultado anterior, y puede hacer iteraciones recursivas sobre la estructura de su directory haciendo esto.