说我有一个有多个banches的回购。
是否可以使用常用的git foo获取某些特定日期/时间的回购快照? (我们目前每天都有代码转储,我正在考虑删除它的方法)
(假设没有永久删除分支,并且没有播放git提交历史记录)
编辑:可以进行临时分支合并。
答案 0 :(得分:7)
根据reflog(意味着,默认限制为90天)谨防@{<date>}
。
请参阅Specifying Revisions中的“git rev-parse
”。
“git checkout by date”建议另一种方法:
git checkout `git rev-list -n 1 --before="2013-09-25 5:00" master`
如果您合并了任何分支,
rev-list
将无效 例如:我想返回V5
分支,但最终进入V4.2
分支。
更强大的方法是添加--first-parent
:
git checkout `git rev-list -n 1 --first-parent --before="2013-09-25 5:00" master`