我有一台Amazon EC2机器。我想在这台机器上克隆一个较旧版本的github仓库。通常我使用git clone https://linktomyrepo.git如何克隆一个旧版本,比如14天前的更新?我可以在存储库的提交历史中看到我需要的确切版本,但不知道如何将其克隆到EC2机器上。我需要使用每个提交旁边的小SHA代码吗?
我有一台Amazon EC2机器。我想在这台机器上克隆一个较旧版本的github仓库。通常我使用git clone https://linktomyrepo.git如何克隆一个旧版本,比如14天前的更新?我可以在存储库的提交历史中看到我需要的确切版本,但不知道如何将其克隆到EC2机器上。我需要使用每个提交旁边的小SHA代码吗?
您可以使用提交哈希来检查任何给定状态。
例如,通过查看日志,您确定233ab4ef是您感兴趣的状态:执行git checkout 233ab4ef
以检出该状态。
另一种实现方法是使用 git checkout @{14.days.ago}
Git并不是被设计成那样的。当你克隆一个仓库时,你会复制所有的版本。
所以,首先要克隆一个仓库(这将初始检出最新版本),然后检出你真正想要的版本。
你可以根据哈希值来检出提交的版本。
git checkout afe52
你也可以按照日期来查看(而不是查找哈希值):
git checkout 'master@{1979-02-26 18:30:00}'
git checkout @{14.days.ago}
要查看可以检出的提交,请使用git log
。
git tag
命令,要查看特定标签的详细信息,您可以使用 git cat-file tag TAG_NAME
命令。例如,在节点存储库中,我可以使用 git cat-file tag v4.4.7
命令来显示提交字符串 0974fc6a25c343744235331eb20d31f6412ff7e1
。 :) - Dobz
git checkout @{14.days.ago}
中的14
究竟代表什么? - Shafizadeh