74102


cli 上で git のリポジトリを閲覧していると、たとえばコミットに対して、そのファイル一覧を `tree`
した結果がほしくなる場合があります。(これは、 cli 上で普通に `tree` を利用したくなるのと同じ理由で、つまり閲覧性のためです)

素直にチェックアウトして `tree` したとすると、例えば .gitignore
しているファイルたちまでその出力に含まれてしまうので、これは自分が今みたいと思っている、「git 管理対象のファイル一覧」ではなくなってしまいます。また、
`git clean -xdf` などを実施してしまうと、今度はプロジェクト用の設定ファイル (例えば `.env` など)
まで消えてしまうので、これは避けたいと思っています。

`git ls-tree -r TREEISH` は、近いことができるものの、これはフルパスが表示されてしまい、ディレクトリ構造を把握するにあたっては
`tree` 的な出力の方が見やすいので、可能ならば出力をそのようにしたいと考えています。

# 質問

git のコミット(そしてもし可能ならば treeish)に対して、その結果を `tree` したような結果を得るようなツールはありますか?


CC BY-SA 4.0
2021-02-16T13:47:18.777
74053
2021-02-18T09:44:56.390
754
question
git
git で コミット(できれば treeish) を `tree` した結果を出力したい


`tree` の[1.8.0](http://mama.indstate.edu/users/ice/tree/changes.html)で
`--fromfile` オプションが追加されたので `tree` 自体を使えます。

[code]

    git ls-tree -r --name-only TREEISH | tree --fromfile .
    
[/code]


CC BY-SA 4.0
2021-02-18T09:44:56.390
74102
2021-02-18T09:44:56.390
241
74053
answer