Git中是否有任何命令可以导出所有文件和文件夹结构。上个月或过去7天?
我正在寻找这样的事情(仅仅过了一段时间):
git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT $commit_id | xargs tar -rf mytarfile.tar
答案 0 :(得分:0)
您可以使用git format-patch
一次备份单个提交。但是你仍然需要原始的repo来重新应用补丁。
commit=$(git rev-list -n 1 --before="1 month ago" origin/master)
datestr=$(date +%F)
git format-patch --stdout $commit.. | gzip -c > /path/to/backups/backup.$datestr.am.gz
答案 1 :(得分:0)
您可以使用git bundle。这主要适用于使用git将文件移动到另一台机器(可能是离线),但也可能适用于其他场景。
请参阅帮助页面中的示例:
您可以根据时间使用基础:
$ git bundle create mybundle --since=10.days master