git-克隆旧版本的github repo

我有一台Amazon EC2机器。 我想在这台机器上克隆旧版本的github repo。 通常我使用git clone [https://linktomyrepo.git]如何克隆旧版本,例如14天前的更新? 我可以在存储库的提交历史记录中看到所需的确切版本,但是不知道如何将其克隆到EC2计算机上。 我是否需要在每次提交旁边使用一点SHA代码?

Mobie asked 2020-01-27T19:56:31Z
3个解决方案
56 votes

您始终可以使用提交哈希来签出您喜欢的任何状态。

例如,通过查看日志,您确定233ab4ef是您感兴趣的状态,发出git checkout @{14.days.ago}签出该状态。

实现此目的的另一种方法是使用git checkout @{14.days.ago}

Olivier Refalo answered 2020-01-27T19:57:00Z
32 votes

Git不是那样设计的。 克隆存储库时,将复制所有版本。

因此,首先克隆一个存储库(最初会签出最新版本),然后签出您实际想要的版本。

您可以基于哈希检出提交。

git checkout afe52

您还可以根据日期(而不是查找哈希)进行结帐,例如:

git checkout 'master@{1979-02-26 18:30:00}'
git checkout @{14.days.ago}

要检查您可以签出的提交,请使用git log

ronalchn answered 2020-01-27T19:57:37Z
0 votes

专门针对github.com UI发布此解决方案。

我使用的是Keycloak的旧版本,想下载源代码。 在github.com上,这是一个简单的过程:

  1. 转到发布部分
  2. 下载所需的版本。

enter image description here enter image description here

tryingToLearn answered 2020-01-27T19:58:10Z
translate from https://stackoverflow.com:/questions/12256137/cloning-an-older-version-of-github-repo