- Procurando por um comando como
ls -Roudir/sque pode listar todos os arquivos em um commit / branch. - Existe algum comando que pode comparar dois arquivos de ramos diferentes?
Respostas:
git ls-tree -r --name-only <commit>(onde em vez de <commit>pode haver <branch>). -topção que lista os subdiretórios antes de descer para elesgit diff <branchA>:<fileA> <branchB>:<fileB>, git diff <branchA> <branchB> -- <file>Para comparar o mesmo arquivo de ramos diferentes:
git diff branch_1..branch_2 file.txt
Para listar todos os arquivos em um objeto de árvore:
git ls-tree -r branch
ls, você esqueceu o -treeno final :)
Para listar todos os arquivos adicionados no novo ramo
git diff --name-only branch1 master
Para listar, você pode usar git ls-filespara listar todos os arquivos recursivamente no índice atual / diretório de trabalho. Você pode consultar Git-SCM Docs / git-ls-files ou digitar man git-ls-filesse você instalou o Git e tem páginas de manual disponíveis.
Ele tem nice opções para mostrar arquivos de maneiras diferentes, como cached, staged, deleted, modified, ignoredou otherspara o untracked. Ele também oferece suporte a padrões de correspondência. Tendo também um --debugarg, você pode facilmente listar creation time, modification time, inode id, owner & group id, sizee flagspara arquivos.
Para a diferença de dois ramos, simplesmente use git diff <branch> <other branch>como indicado em outras respostas.
git ls-filesgit ls-filesdescrito no documento git-scm :# Switch to <branch> of interest
$ git checkout <branch>
# List all files in <branch>
$ git ls-files
Para mais opções, verifique a documentação .