You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用git下载远程服务器中指定时间点之前的仓库更新?

Git拉取指定时间点之前提交的操作方法

场景1:尚未克隆远程仓库

方案A:需要保留提交历史

  • 先执行最小深度浅克隆,降低首次拉取体积:
    git clone --depth 1 <远程仓库地址>
    cd <本地仓库目录名>
  • 筛选指定时间点之前的最新提交哈希,示例时间为2023年10月1日0点,目标分支为main:
    git rev-list -n 1 --before="2023-10-01 00:00:00" origin/main
  • 拉取目标提交及对应历史(若需要完整历史将--depth 100替换为--unshallow):
    git fetch --depth 100 origin <上一步拿到的commit哈希>
  • 检出到目标提交,完成拉取:
    git checkout <commit哈希>

方案B:仅需要代码快照,不需要提交历史

  • 筛选目标提交哈希后直接拉取代码压缩包,无需克隆仓库:
    git archive --format=zip --remote=<远程仓库地址> <commit哈希> -o code_snapshot.zip

场景2:已存在本地仓库,需要更新到指定时间点版本

  • 先拉取远程最新分支引用:
    git fetch origin
  • 筛选指定时间点之前的最新提交哈希:
    git rev-list -n 1 --before="你的目标时间,格式示例:2023-10-01 00:00:00" origin/目标分支名
  • 将本地分支重置到目标提交:

注意:该操作会丢弃本地所有未提交修改,操作前请确认本地内容已备份
git reset --hard <上一步拿到的commit哈希>


内容的提问来源于stack exchange,提问作者L. Ouyang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 06:45:03