我如何使用git ls-files
仅显示文件(即不包括目录)?例如,我想从以下输出中删除asd1
和:asd2
$> git ls-files
asd1/bar
asd1/foo
asd2/bar
base.html
index.html
list.html
有没有办法在不涉及字符串操作的情况下做到这一点?
我如何使用git ls-files
仅显示文件(即不包括目录)?例如,我想从以下输出中删除asd1
和:asd2
$> git ls-files
asd1/bar
asd1/foo
asd2/bar
base.html
index.html
list.html
有没有办法在不涉及字符串操作的情况下做到这一点?
这就是管道的用途:
git ls-files | while read filename; do basename $filename; done
我也可以走这条路:
git ls-files | sed 's/.*\///'
好的,我终于让它工作了......我留下了答案,希望能节省一些时间:
git ls-tree --name-only -r HEAD | grep -v -w -e "$(git ls-tree -d --name-only HEAD)"