如何将具有LFS支持的存储库移至gitlab.com?

时间:2019-02-07 20:56:55

标签: git gitlab git-lfs

我在旧的githost实例上有一个存储库,我正尝试将其迁移到gitlab.com。我正在使用他们的说明进行迁移,但是由于此存储库使用LFS,因此出现了一些我无法弄清楚如何解决的错误。这是我正在运行的命令

cd repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:group/repo.git
git push -u origin --all
git push -u origin --tags

这是我在第一个git命令中从push获得的响应的示例:

remote: GitLab: LFS objects are missing. Ensure LFS is properly set up or try a manual "git lfs push --all".
To https://gitlab.com/group/repo.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://gitlab.com/group/repo.git'

我尝试了建议的命令(git lfs push --all),但该命令无效。我也尝试过git lfs push origin master,结果是:

Uploading LFS objects: 100% (29/29), 2.4 GB | 0 B/s, done

我在Gitlab文档上找不到任何内容,因此我需要这个社区的帮助。谢谢!

编辑:我也尝试过使用https而不是SSH回购源,这没有什么区别。

1 个答案:

答案 0 :(得分:1)

我只是想做你想做的事。

执行以下操作:

  • git clone git@github.com:g19fanatic/test_lfs.git cd test_lfs
  • git lfs track *.bin
  • yes "123456678" | head -c 1024000 > test.bin
  • git add .
  • git push origin master
    • 在github中看到文件,并使用lfs进行跟踪
  • git remote add gitlab git@gitlab.com:pauldibiase/lfs-test.git
  • git lfs push --all gitlab
    • 收到以下错误: Locking support detected on remote "gitlab". Consider enabling it with: $ git config lfs.https://gitlab.com/pauldibiase/lfs-test.git/info/lfs.locksverify true
  • git config lfs.https://gitlab.com/pauldibiase/lfs-test.git/info/lfs.locksverify true
  • git lfs push --all gitlab
    • 上传LFS对象:100%(1/1),1.0 MB | 0 B / s,完成
  • git push gitlab master
    • 在gitlab中看到文件,已跟踪lfs
  

FIPS模式已初始化

     

上载LFS对象:100%(1/1),1.0 MB | 0 B / s,完成

     

计数对象:4个,完成。

     

Delta压缩最多使用16个线程。

     

压缩对象:已完成100%(3/3)

     

书写对象:100%(4/4),416字节|完成速度为0字节/秒。

     

总计4(增量0),已重用0(增量0)

     

至git@gitlab.com:pauldibiase / lfs-test.git

     
      
  • [新分支]管理员->管理员
  •   

使用git --version = git version 1.8.3.1

使用git lfs --version = git-lfs/2.6.1 (GitHub; linux amd64; go 1.11.2; git dc072c3e)

尝试将实际分支推送到新的gitlab遥控器。