git - 从 .git 存储库中提取图像文件
问题描述
有没有办法查看和提取 git 存储库中所有提交和所有分支中的所有图像?例如,在一个分支中,我添加一个图像 x.jpg 并提交它,然后我删除该图像并添加一个新的 y.jpg 并提交它。如果我回到第一个提交,在存储库中仍然有关于 x.jpg 的信息。我想查看不同提交和不同分支中的所有图像文件。有没有办法做到这一点?无需返回旧提交来查看每个文件的文件。
解决方案
git rev-list --all --objects
将为您提供历史上所有内容的列表,您可以根据其显示的内容做任何您喜欢的事情,这git show
是将 blob 的内容放在您喜欢的任何地方的简单方法。所以例如
git rev-list --all --objects \
| sed -nr 's/([^ ]*) (.*)\.(jpg|jpeg|png|bmp)$/git show \1 >"\2-\1.\3"/p'
将打印命令以删除工作树中这些图像类型文件的所有历史版本。
推荐阅读
- c# - 按钮不起作用,没有发现问题,是我写错了吗?
- discord.js - Discord.js - awaitMessages 中的条件
- reactjs - 具有范围内组件的确切名称的变量
- python - using pandas.DataFrame.to_excel without creating a new sheet
- flutter - 如何在 GridView 中禁用滚动?
- spring-cloud-gateway - Spring Cloud Gateway Logging of Request and Response using filter
- apache-spark - How do I print out a spark.sql object?
- javascript - Bootstrap dropdown-toggle no longer working after implementing javascript
- heroku-cli - when pushing to heroku and getting an error
- python - Python 计算 gotos 和 USE_COMPUTED_GOTOS?