use*_*317 5 git github git-lfs
我想在支持git LFS协议的外部驱动器(git init --bare reponame)上初始化几个本地git存储库。即克隆这些文件后,我希望能够通过LFS跟踪大文件(然后,文件的版本应存储在外部驱动器上)
这样做没有任何其他步骤是行不通的(即克隆空仓库,使用git LFS跟踪大文件,然后尝试推送到远程):
Git LFS: (0 of 122 files) 0 B / 157.56 MB
http: Post /media/me/bigdrive/git_repos/coding.git/info/lfs/objects/batch:
unsupported protocol scheme ""
http: Post /media/me/bigdrive/git_repos/coding.git/info/lfs/objects/batch:
unsupported protocol scheme ""
error: failed to push some refs to '/media/me/bigdrive/git_repos/coding'`
Run Code Online (Sandbox Code Playgroud)
我找不到有关如何执行此操作的指南,LFS手册页似乎没有提供解决方案。GitHub / BitBucket指南仅说明了如何在本地存储库上执行此操作,然后在其服务器上推送到正确配置的git存储库
感谢任何帮助,谢谢!
我有类似的问题,但设法让它工作。
步骤1:
下载并启动 LFS 服务器(如果您尚未这样做),例如https://github.com/git-lfs/lfs-test-server(请勿在生产中使用此服务器。)
第2步:
为您的存储库正确设置 LFS 服务器 URL,如下所述: https: //github.com/git-lfs/git-lfs/wiki/Tutorial#lfs-url
就我而言,在我的工作副本文件夹中运行以下命令就足够了:
git config -f .lfsconfig lfs.url http://username:password@localhost:8080
git add .lfsconfig
Run Code Online (Sandbox Code Playgroud)
将用户名和密码替换为您所需的凭据,并将 localhost:8080 替换为您的 Git 服务器 URL。
您可以运行git lfs env来验证您的结果。
步骤3:
按照此处所述设置您的环境LFS_ADMINUSER变量: https ://github.com/git-lfs/lfs-test-server#runningLFS_ADMINPASS
然后,您应该能够在浏览器中访问http://localhost:8080/mgmt(或 LFS 服务器运行的任何位置)并添加您的凭据。
结果看起来很有希望:
C:\Users\Nick\Desktop\WorkingCopy\Repo>git push origin master
warning: current Git remote contains credentials
warning: current Git remote contains credentials
Git LFS: (1 of 1 files) 6.72 KB / 6.72 KB
Counting objects: 3, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 428 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To C:/Users/Nick/Desktop/WorkingCopy/../Repo
309629f..7fe106d master -> master
Run Code Online (Sandbox Code Playgroud)
LFS 服务器的 lfs-content 文件夹现在包含一个与所添加文件的大小完全相同的文件。
| 归档时间: |
|
| 查看次数: |
1856 次 |
| 最近记录: |