我试图弄清楚如何使用git-lfs。我使用gitlab EE服务器。
也许我错过了一些东西,但是除了介绍“ track”命令和1分钟可爱视频的非常简短的教程之外,我找不到关于git-lfs的任何文档。
例如,我在回购中添加并跟踪一个3.7GB的tar文件,然后将其推送:
git lfs track "*.tar"
cp <a folder>/a.tar .
git add a.tar
git commit -m "add a.tar"
git push origin master
问题1:在此过程结束时,a.tar是否已上传到gitlab服务器上?目前尚不清楚,因为“ add”和“ commit”命令花费了一些时间(也许还不够长,所以我想知道在这段时间内是否上载了3.7GB),但是推送根本没有花费任何时间(第二)。
问题2:如果文件已上传到服务器上,在哪里?显然与回购不在同一地点(这就是重点)。我问是因为正在备份服务器,所以我需要知道是否使用git-lfs要求我以任何方式进行更新。
问题3:如果未上传文件,这是否意味着存储库的其他用户将在添加文件的原始计算机上获得指向该文件的链接?有没有办法将其更改为服务器上的位置?(回到问题2)
问题4:克隆存储库后,确实不存在完整的3.4G文件,“仅”包含以下内容的文本文件:
version https://git-lfs.github.com/spec/v1
oid sha256:4bd049d85f06029d28bd94eae6da2b6eb69c0b2d25bac8c30ac1b156672c4082
size 3771098624
这当然很棒,而且很重要。但是,如果需要访问整个文件怎么办?如何下载呢?
我很乐意直接回答这个问题或链接到正确的文档。