如何在不下载整个存储库的情况下“拉” git数据库

问题描述

我有一个大型项目的内容(有一些更改),但是没有Git数据库。例如,可能会遇到相同的情况:

  1. git clone <...>/repo.git
  2. cd repo
  3. echo "Blah" > new_file.txt
  4. rm .git

由于我的仓库很大,而且所有项目文件都还在那里,所以我不想重新克隆所有内容。如何恢复到正常状态,我可以提交并推送我的new_file.txt

我尝试在此处进行一般搜索以及其他问题,但似乎没有任何方法可以针对这种特定情况提供答案。

解决方法

  1. 使用git clone --no-checkout将存储库克隆到另一个目录,例如dir
  2. dir/.git复制到您的仓库中。
  3. 转到您的存储库并运行git reset
,

有一个.git文件夹,其中包含数据库。您可以将其压缩为 zip 文件,下载并复制到您的文件夹中。因此,步骤如下:

  1. 导航到存储库中的文件夹
  2. 压缩.git文件夹
  3. 下载
  4. 将其解压缩到您的文件夹中