我的本地存储库有大约500个文件,总大小约为125MB。我在“http://repositoryhosting.com/”提供的存储上初始化了一个git存储库。
我通过Git GUI
执行了以下步骤它说它上传到远程回购,我可以看到文件,但回购现在的大小只有 26 MB 。
我尝试在远程仓库的另一台机器上的两个不同场合git clone和git pull。他们似乎完全下载了Remote repo上的 26MB 。但是,当我检查机器上文件夹的大小时,它会显示 125MB 。
问题:
答案 0 :(得分:6)
'git push'在上传到Remote Repo时压缩数据吗?
是。它推动了diff delta pack files。
我丢失了数据吗?
没有。
一旦你开始处理回购,你:
如果我想在多台本地计算机上制作Remote Repo的副本,以便多人可以在同一个项目上工作,我可以使用Git Clone或Git Pull吗?
git clone
用于该回购的初始复制和结帐
然后是git pull
。
答案 1 :(得分:1)
除了已经说过的内容之外,Git的内容可寻址存储模型自然地对数据进行重复数据删除,即具有相同内容的文件仅存储一次。我非常怀疑这会在您的情况下发挥作用,但一般而言,根据您存储的数据类型,这是Git存储相当高效的另一个原因。
答案 2 :(得分:0)
由于git使用delta编码推送数据,因此您不会丢失数据。 顺便说一句,您可以通过执行以下操作来清理不必要的文件并优化本地存储库:
git gc
来自gc
的手册页:
在当前存储库中运行许多内务处理任务, 例如压缩文件修订版(以减少磁盘空间 并提高性能)并删除可能从之前调用git add创建的无法访问的对象。