ls -R
或dir/s
之类的命令。 答案 0 :(得分:116)
git ls-tree -r --name-only <commit>
(代替<commit>
可以有<branch>
)。-t
选项列出子目录,然后再下载到子目录中git diff <branchA>:<fileA> <branchB>:<fileB>
,git diff <branchA> <branchB> -- <file>
答案 1 :(得分:19)
比较来自不同分支的同一文件:
git diff branch_1..branch_2 file.txt
列出树对象中的所有文件:
git ls-tree -r branch
答案 2 :(得分:16)
列出新分支中添加的所有文件
git diff --name-only branch1 master
答案 3 :(得分:2)
要列出,您可以使用git ls-files
递归列出当前索引/工作目录中的所有文件。如果您已经安装了Git并且有可用的手册页,则可以参考Git-SCM Docs / git-ls-files或键入man git-ls-files
。
它有不错的选择,以不同的方式显示文件,例如cached
,staged
,deleted
,modified
,ignored
或others
未跟踪的。它还支持匹配模式。还有一个--debug
参数,您可以轻松列出creation time
,modification time
,inode id
,owner & group id
,size
和flags
文件。
对于两个分支的区别,只需使用其他答案中所述的git diff <branch> <other branch>
。
答案 4 :(得分:2)
git ls-files
git ls-files
:# Switch to <branch> of interest
$ git checkout <branch>
# List all files in <branch>
$ git ls-files
有关其他选项,请检查documentation。