3

我正在开发一个 Rails 应用程序并使用 git。我决定尝试一个新的 gem,并在任何更改之前创建一个 git commit。实现 gem 涉及删除我自己的一些代码。

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

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

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

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

4

2 回答 2

5

假设“历史保存点”等同于提交时间,因为默认情况下不记录特定于文件的时间戳,所以 checkout 命令的语法似乎是:

git checkout分支@{ timediff }

与中一样git checkout master@{1 day ago},或者,您可以使用git log隔离您的提交 ID 并使用 git checkout master commitId将其签出。

于 2013-06-03T10:39:19.477 回答
2

你试过git checkout <commit hash>吗?

执行此 git 后将显示如下消息:

注意:移动到不是本地分支的 '' 如果要从此结帐创建新分支,可以(现在或以后)再次使用 -b 和 checkout 命令来执行此操作。示例: git checkout -b HEAD 现在位于 4553c14...

于 2013-06-03T10:53:45.767 回答