1

我有一个启用了 git-lfs 的现有仓库(在 GitHub 上),里面有 1GB 的文件。出于带宽原因,我想停止使用 GitHub 并开始使用托管在公司网络上的 LFS 存储库。有谁知道如何在git lfs repos之间迁移?

我可以转换为“没有 git-lfs 的普通 repo”,然后再转换回 git-lfs,但必须有一种方法可以做到这一点,而无需重写历史记录并复制文件,对吗?

谢谢!

4

1 回答 1

3

(来自Github Enterprise 安装,感谢@Polygnome指出这一点)

  1. 添加第二个遥控器
$ git remote add NEW-REMOTE https://NEW-REMOTE-HOSTNAME/path/to/repo
 
$ git lfs env
> git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c)
> git version 2.7.4 (Apple Git-66)
 
> Endpoint=https://GITHUB-ENTERPRISE-HOST/path/to/repo/info/lfs (auth=basic)
> Endpoint (NEW-REMOTE)=https://NEW-REMOTE-HOSTNAME/path/to/repo/info/lfs (auth=none)
  1. 从旧遥控器获取
$ git lfs fetch origin --all
> Scanning for all objects ever referenced...
> ✔ 16 objects found
> Fetching objects...
> Git LFS: (16 of 16 files) 48.71 MB / 48.85 MB
  1. 推送到新的遥控器
$ git lfs push NEW-REMOTE --all
> Scanning for all objects ever referenced...
> ✔ 16 objects found
> Pushing objects...
> Git LFS: (16 of 16 files) 48.00 MB / 48.85 MB, 879.10 KB skipped
  1. 通过编辑将新遥控器设为默认值,.lfsconfig并将其设为所有人的默认值
于 2020-07-15T09:27:04.453 回答