- Ищете команду типа
ls -R
or,dir/s
которая может перечислить все файлы в фиксации / ветке. - Есть ли какая-нибудь команда, которая может сравнивать два файла из разных веток?
88
git ls-tree -r --name-only <commit>
(где вместо <commit>
может быть <branch>
). -t
опцию, которая перечисляет подкаталоги перед тем, как перейти в них.git diff <branchA>:<fileA> <branchB>:<fileB>
, git diff <branchA> <branchB> -- <file>
Чтобы сравнить один и тот же файл из разных веток:
Чтобы перечислить все файлы в древовидном объекте:
источник
ls
, ты забыл-tree
Чтобы перечислить все файлы, добавленные в новую ветку
источник
Начиная с Git v2.1.0 [15.08.14]
Для листинга вы можете использовать
git ls-files
рекурсивный список всех файлов в текущем индексном / рабочем каталоге. Вы можете обратиться к Git-SCM Docs / git-ls-files или ввести,man git-ls-files
если вы установили Git и у вас есть справочные страницы.Он имеет хорошие возможности , чтобы показать файлы по - разному , как
cached
,staged
,deleted
,modified
,ignored
илиothers
для неотслеживаемых. Он также поддерживает сопоставление шаблонов. Имея также--debug
ARG, вы можете легко перечислитьcreation time
,modification time
,inode id
,owner & group id
,size
иflags
для файлов.Для разницы двух веток просто используйте,
git diff <branch> <other branch>
как указано в других ответах.источник
Перечислить файлы в ветке с
git ls-files
git ls-files
описано в документе git-scm :# Switch to <branch> of interest $ git checkout <branch> # List all files in <branch> $ git ls-files
Дополнительные параметры см. В документации .
источник