2013-06-03 53 views
3

我正在开发Rails应用程序并使用git。我决定尝试一个新的创业板,并在任何变化之前创建一个git commit。要实现这个gem,需要删除一些我自己的代码。从历史时间点克隆git存储库

当我添加了gem并做了一些其他更改后,我意识到如果运行早期版本的应用程序会更好,所以我可以并排比较。

我通过回滚git,复制文件树,然后重新应用与新gem相关的更改来解决此问题。这是我做了以下事情:

$ git reset --hard HEAD 
$ git clean -f -d 

是否有可能从一个历史保存点创建(本地)git存储库的克隆?

回答

5

假设“历史的保存点”等同于提交时间,具体文件的时间戳默认不记录,结账命令的语法似乎是:

git的结帐分支 @ {timeDiff测量}

git checkout [email protected]{1 day ago}一样,您也可以使用git log来隔离您的提交ID,并使用git checkout master commitId来检查它。

+1

“历史保存点”是提交点。 – ardochhigh

2

你试过git checkout <commit hash>

执行这个git会显示一条消息,这样的事情后:

注:移动到“”这是不是一个地方分支如果你 想从这个结帐创建一个新的分支,你可能通过再次使用-b和checkout命令来执行此操作(现在或稍后的 )。例如:git 结帐-b HEAD现在处于4553c14 ...

+0

谢谢阿齐兹我会检查这个选项。 – ardochhigh