- Buscando un comando como
ls -Rodir/sque pueda enumerar todos los archivos en una confirmación / rama. - ¿Existe algún comando que pueda comparar dos archivos de diferentes ramas?
Respuestas:
git ls-tree -r --name-only <commit>(donde en lugar de <commit>puede haber <branch>). -topción que enumera los subdirectorios antes de descender a ellosgit diff <branchA>:<fileA> <branchB>:<fileB>, git diff <branchA> <branchB> -- <file>Para comparar el mismo archivo de diferentes ramas:
git diff branch_1..branch_2 file.txt
Para enumerar todos los archivos en un objeto de árbol:
git ls-tree -r branch
ls, te has olvidado -treedel final :)
Para enumerar todos los archivos agregados en la nueva rama
git diff --name-only branch1 master
Para enumerar, puede usar git ls-filespara enumerar todos los archivos de forma recursiva en el índice actual / directorio de trabajo. Puede consultar Git-SCM Docs / git-ls-files o escribir man git-ls-filessi ha instalado Git y tiene páginas de manual disponibles.
Tiene buenas opciones para mostrar los archivos de diferentes maneras, como cached, staged, deleted, modified, ignoredo otherspara el sin seguimiento. También admite patrones coincidentes. Teniendo también un --debugarg, puede enumerar fácilmente creation time, modification time, inode id, owner & group id, sizey flagspara los archivos.
Para la diferencia de dos ramas, simplemente use git diff <branch> <other branch>como se indica en otras respuestas.
git ls-filesgit ls-filesdescrito en el documento de git-scm :# Switch to <branch> of interest
$ git checkout <branch>
# List all files in <branch>
$ git ls-files
Para más opciones consulte la documentación .