在特定日期获取git回购的快照

在特定日期获取git回购的快照

问题描述:

假设我有一个具有多个关卡的回购。在特定日期获取git回购的快照

是否有可能使用通常的git foo获取某些特定日期/时间的回购快照? (我们目前有代码转储天天和我想到的方法来去除)

(假设没有分支被永久删除,并且git的承诺历史尚未玩过)

编辑:临时分支合并是可能的。

谨防@{<date>},基于reflog(含义,默认限制为90天)。
参见git rev-parse中的“Specifying Revisions”。

git checkout by date” 提出另一种方法:

git checkout `git rev-list -n 1 --before="2013-09-25 5:00" master` 

this warning though:如果您有任何分支合并

rev-list将无法​​正常工作。
例如:我想回到V5分支,但最终在V4.2分支。

更加可靠的办法就是添加--first-parent

git checkout `git rev-list -n 1 --first-parent --before="2013-09-25 5:00" master` 
+0

分公司合并是可能的。编辑了这个问题。 –

+1

@ ansh0l我*只是*编辑我的答案来解决这个问题。 – VonC