- Szukasz polecenia takiego jak
ls -Rlub,dir/sktóre może wyświetlić wszystkie pliki w zatwierdzeniu / gałęzi. - Czy jest jakieś polecenie, które może porównać dwa pliki z różnych gałęzi?
Odpowiedzi:
git ls-tree -r --name-only <commit>(gdzie zamiast tego <commit>może być <branch>). -topcji, która wyświetla podkatalogi przed zejściem do nichgit diff <branchA>:<fileA> <branchB>:<fileB>, git diff <branchA> <branchB> -- <file>Aby porównać ten sam plik z różnych gałęzi:
git diff branch_1..branch_2 file.txt
Aby wyświetlić wszystkie pliki w obiekcie drzewa:
git ls-tree -r branch
ls, że zapomniałeś -treeo końcu :)
Aby wyświetlić wszystkie pliki dodane w nowej gałęzi
git diff --name-only branch1 master
Aby wyświetlić listę, możesz użyć git ls-filesrekurencyjnej listy wszystkich plików w bieżącym katalogu indeksowym / roboczym. Możesz odwołać się do Git-SCM Docs / git-ls-files lub wpisać, man git-ls-filesjeśli zainstalowałeś Git i masz dostępne strony podręcznika.
Ma ładne opcji, aby wyświetlić pliki w różnych sposobów, takich jak cached, staged, deleted, modified, ignoredlub othersdla untracked. Obsługuje również pasujące wzorce. Mając również --debugArg, można łatwo wymienić creation time, modification time, inode id, owner & group id, sizea flagsdla plików.
Aby uzyskać różnicę dwóch gałęzi, użyj po prostu git diff <branch> <other branch>tak, jak podano w innych odpowiedziach.
git ls-filesgit ls-filesopisać w dokumentacji git-scm :# Switch to <branch> of interest
$ git checkout <branch>
# List all files in <branch>
$ git ls-files
Więcej opcji można znaleźć w dokumentacji .