リポジトリ履歴のある時点でいくつかのブロブにアクセスしたいと思います。Git:.gitディレクトリのblobパスを取得する
現在、私はgit show $REV:$PATH
でそれを行います。しかし、ファイルはかなり大きく、私はそれらを読み上げてスクリプトでパイプしたくない。私は彼らのパスを取得し、プレーンなファイルとして読んでみたい。
現在のドキュメントに記載されているレイアウト(例:.git/objects/ee/2403ffd236587a2b17ddc35b0e711fc99ba6a0
)に依存して、ファイルハッシュを取得し、手動でパスに変換できますか?私は将来のバージョンですぐに変更されないことを意味し、オブジェクトディレクトリは常にこの構造を持っています。 いくつかの配管コマンドで簡単に行う方法はありますか?
[packed repositories](https://git-scm.com/docs/git-repack)(例: 'git repack -ad'を実行した後)?パックされたリポジトリでは、ブロブはスタンドアロンファイルとして存在しないことがあります。 – Leon
.git/objects内のファイルは元のデータではありません。それらは圧縮されており、小さなヘッダーがあります。ファイルに直接アクセスすることで何も得られません。 – j6t
@ Leon @ j6t言い換えれば、私が望むのは単なる夢であり、 '.git'ディレクトリに直接アクセスすることはまだ悪い考えですか?私はブロブがいつも触れられていないと思った... –