¿Cómo copio todos los archivos en un directorio desde otra rama? Puedo enumerar todos los archivos en ese directorio haciendo
git ls-tree master:dirname
Entonces puedo copiar todos los archivos individualmente haciendo
git checkout master -- dirname/filename
Sin embargo, el uso de comodines hasta ahora ha sido un fracaso total. Esto no hace nada:
git checkout master -- dirname/*.png
Aunque supongo que puedo usar un script bash para hacer eso, tiene que haber una manera más fácil, ¿verdad?

git checkout master -- dirname; git add dirname; git commit -c $COMMIT_SHA1 --reset-author;dónde$COMMIT_SHA1podría serbranch_ay sería el objeto de confirmación que tiene el mensaje de confirmación que desea. No sé de antemano cómo determinar mediante programación el compromiso con el cambio más reciente adirnamedirname, pero también copia cualquier archivo que se encuentre en.gitignorelamasterrama. ¿Alguna idea de por qué es eso?cherry-pick. Aplica confirmaciones de otras ramas, pero solo los archivos que se modificaron en las confirmaciones que desea.Si no hay espacios en las rutas y está interesado, como estaba yo, en archivos de extensión específica solamente, puede usar
fuente
git checkout master -- *.c